Devices and methods for controlling media presentation

ABSTRACT

An electronic device is configured to: while presenting media content at a first non-zero playback speed, detect a press input by a first contact on a first media control; and, in response to detecting the press input: determine whether an intensity of the first contact is above a first intensity threshold; if the intensity of the first contact is above the first intensity threshold, present the media content at a second playback speed, where the second playback speed is faster than the first non-zero playback speed; and, if the intensity of the first contact is below the first intensity threshold, maintain presentation of the media content at the first non-zero playback speed.

RELATED APPLICATION

This application is a continuation of U.S. application Ser. No.14/866,159, filed Sep. 25, 2015, which claims priority to U.S.Provisional Patent Application Ser. No. 62/129,941, filed Mar. 8, 2015,entitled “Devices and Methods for Controlling Media Presentation,” bothof which are incorporated by reference herein in their entirety.

TECHNICAL FIELD

This relates generally to electronic devices with touch-sensitivesurfaces, including but not limited to electronic devices withtouch-sensitive surfaces for controlling playback of digital media,including fast scanning through media files.

BACKGROUND

The use of touch-sensitive surfaces as input devices for computers andother electronic computing devices has increased significantly in recentyears. Exemplary touch-sensitive surfaces include touchpads andtouch-screen displays. Such surfaces are sometimes used to controlpresentation of video, audio, and/or other media on a display, forexample by interacting with virtual play, pause, fast forward, andrewind buttons on the display.

But existing methods and devices for controlling media presentation arecumbersome and inefficient. For example, the inputs required to adjustplayback speed may not be clear and intuitive to a user.

SUMMARY

Accordingly, there is a need for electronic devices with faster, moreefficient methods and interfaces for controlling media presentation(e.g., controlling the rewind, fast forward, and/or playback speeds ofvarious media). Such methods and interfaces optionally complement orreplace conventional methods for controlling media presentation. Suchmethods and interfaces reduce the number, extent, and/or nature of theinputs from a user and produce a more efficient human-machine interface.For battery-operated devices, such methods and interfaces conserve powerand increase the time between battery charges.

The above deficiencies and other problems associated with userinterfaces for electronic devices with touch-sensitive surfaces arereduced or eliminated by the disclosed devices. In some embodiments, thedevice is a desktop computer. In some embodiments, the device isportable (e.g., a notebook computer, tablet computer, or handhelddevice). In some embodiments, the device is a personal electronic device(e.g., a wearable electronic device, such as a watch). In someembodiments, the device has a touchpad. In some embodiments, the devicehas a touch-sensitive display (also known as a “touch screen” or“touch-screen display”). In some embodiments, the device has a graphicaluser interface (GUI), one or more processors, memory and one or moremodules, programs or sets of instructions stored in the memory forperforming multiple functions. In some embodiments, the user interactswith the GUI primarily through stylus and/or finger contacts andgestures on the touch-sensitive surface. In some embodiments, thefunctions optionally include image editing, drawing, presenting, wordprocessing, spreadsheet making, game playing, telephoning, videoconferencing, e-mailing, instant messaging, workout support, digitalphotographing, digital videoing, web browsing, digital music playing,note taking, and/or digital video playing. Executable instructions forperforming these functions are, optionally, included in a non-transitorycomputer readable storage medium or other computer program productconfigured for execution by one or more processors.

In accordance with some embodiments, a method is performed at anelectronic device with a display, a touch-sensitive surface, and one ormore sensors to detect intensity of contacts with the touch-sensitivesurface. The method includes: while presenting media content at a firstnon-zero playback speed, detecting a press input by a first contact onthe touch-sensitive surface that corresponds to a focus selector at afirst location of a first media control on the display; and, in responseto detecting the press input: determining whether an intensity of thefirst contact is above a first intensity threshold; in accordance with adetermination that the intensity of the first contact is above the firstintensity threshold, presenting the media content at a second playbackspeed, wherein the second playback speed is faster than the firstnon-zero playback speed; and, in accordance with a determination thatthe intensity of the first contact is below the first intensitythreshold, maintaining presentation of the media content at the firstnon-zero playback speed.

In accordance with some embodiments, a method is performed at anelectronic device with a display, a touch-sensitive surface, and one ormore sensors to detect intensity of contacts with the touch-sensitivesurface. The method includes: while presenting media content at a firstspeed, detecting a press input by a first contact on the touch-sensitivesurface that corresponds to a focus selector at a first location of afirst media control on the display; and, in response to detecting thepress input by the first contact: determining whether a first intensityof the first contact has satisfied a first intensity threshold;subsequent to determining whether the first intensity of the firstcontact has satisfied the first intensity threshold, determining whetherthe first contact continues to satisfy a second intensity thresholdduring a predefined time interval; in accordance with determining thatthe first intensity of the first contact has satisfied the firstintensity threshold and determining that the first contact continues tosatisfy the second intensity threshold during the predefined timeinterval, presenting the media content at a first fast-forward speedthat is higher than the first speed as long as the first contactsatisfies the second intensity threshold; and, in accordance withdetermining that the intensity of the first contact has satisfied thefirst intensity threshold and determining that the first contact doesnot continue to satisfy the second intensity threshold during thepredefined time interval, presenting the media content at the firstfast-forward speed.

In accordance with some embodiments, an electronic device includes adisplay unit configured to display a user interface, a touch-sensitivesurface unit to receive contacts, one or more sensor units to detectintensity of contacts with the touch-sensitive surface unit; and aprocessing unit coupled with the display unit, the touch-sensitivesurface unit, and the one or more sensor units. The processing unit isconfigured to: while presenting media content at a first non-zeroplayback speed, detecting a press input by a first contact on thetouch-sensitive surface that corresponds to a focus selector at a firstlocation of a first media control on the display; and, in response todetecting the press input: determining whether an intensity of the firstcontact is above a first intensity threshold; in accordance with adetermination that the intensity of the first contact is above the firstintensity threshold, presenting the media content at a second playbackspeed, wherein the second playback speed is faster than the firstnon-zero playback speed; and, in accordance with a determination thatthe intensity of the first contact is below the first intensitythreshold, maintaining presentation of the media content at the firstnon-zero playback speed.

In accordance with some embodiments, an electronic device includes adisplay unit configured to display a user interface, a touch-sensitivesurface unit to receive contacts, one or more sensor units to detectintensity of contacts with the touch-sensitive surface unit; and aprocessing unit coupled with the display unit, the touch-sensitivesurface unit, and the one or more sensor units. The processing unit isconfigured to: while presenting media content at a first non-zeroplayback speed, detect a press input by a first contact on thetouch-sensitive surface that corresponds to a focus selector at a firstlocation of a first media control on the display; and, in response todetecting the press input: determine whether an intensity of the firstcontact is above a first intensity threshold; in accordance with adetermination that the intensity of the first contact is above the firstintensity threshold, present the media content at a second playbackspeed, wherein the second playback speed is faster than the firstnon-zero playback speed; and, in accordance with a determination thatthe intensity of the first contact is below the first intensitythreshold, maintain presentation of the media content at the firstnon-zero playback speed.

In accordance with some embodiments, an electronic device includes adisplay, a touch-sensitive surface, optionally one or more sensors todetect intensity of contacts with the touch-sensitive surface, one ormore processors, memory, and one or more programs; the one or moreprograms are stored in the memory and configured to be executed by theone or more processors and the one or more programs include instructionsfor performing or causing performance of the operations of any of themethods described herein. In accordance with some embodiments, acomputer readable storage medium has stored therein instructions whichwhen executed by an electronic device with a display, a touch-sensitivesurface, and optionally one or more sensors to detect intensity ofcontacts with the touch-sensitive surface, cause the device to performor cause performance of the operations of any of the methods describedherein. In accordance with some embodiments, a graphical user interfaceon an electronic device with a display, a touch-sensitive surface,optionally one or more sensors to detect intensity of contacts with thetouch-sensitive surface, a memory, and one or more processors to executeone or more programs stored in the memory includes one or more of theelements displayed in any of the methods described above, which areupdated in response to inputs, as described in any of the methodsdescribed herein. In accordance with some embodiments, an electronicdevice includes: a display, a touch-sensitive surface, and optionallyone or more sensors to detect intensity of contacts with thetouch-sensitive surface; and means for performing or causing performanceof the operations of any of the methods described herein. In accordancewith some embodiments, an information processing apparatus, for use inan electronic device with a display and a touch-sensitive surface, andoptionally one or more sensors to detect intensity of contacts with thetouch-sensitive surface, includes means for performing or causingperformance of the operations of any of the methods described herein.

Thus, electronic devices with displays, touch-sensitive surfaces and oneor more sensors to detect intensity of contacts with the touch-sensitivesurface are provided with faster, more efficient methods and interfacesfor controlling media presentation (e.g., for controlling the rewind,fast forward, and/or playback speeds), thereby increasing theeffectiveness, efficiency, and user satisfaction with such devices. Suchmethods and interfaces may complement or replace conventional methodsfor controlling media presentation.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the various described embodiments,reference should be made to the Description of Embodiments below, inconjunction with the following drawings in which like reference numeralsrefer to corresponding parts throughout the figures.

FIG. 1A is a block diagram illustrating a portable multifunction devicewith a touch-sensitive display in accordance with some embodiments.

FIG. 1B is a block diagram illustrating exemplary components for eventhandling in accordance with some embodiments.

FIG. 2 illustrates a portable multifunction device having a touch screenin accordance with some embodiments.

FIG. 3 is a block diagram of an exemplary multifunction device with adisplay and a touch-sensitive surface in accordance with someembodiments.

FIG. 4A illustrates an exemplary user interface for a menu ofapplications on a portable multifunction device in accordance with someembodiments.

FIG. 4B illustrates an exemplary user interface for a multifunctiondevice with a touch-sensitive surface that is separate from the displayin accordance with some embodiments.

FIGS. 4C-4E illustrate exemplary dynamic intensity thresholds inaccordance with some embodiments.

FIGS. 5A-5F illustrate exemplary user interfaces for controlling mediapresentation in accordance with some embodiments.

FIGS. 6A-6K illustrate exemplary control heuristics for controllingmedia presentation in accordance with some embodiments.

FIGS. 7A-7H are flow diagrams illustrating a method of controlling mediapresentation in accordance with some embodiments.

FIGS. 8A-8C are flow diagrams illustrating a method of controlling mediapresentation in accordance with some embodiments.

FIGS. 9 and 10 are functional block diagrams of an electronic device inaccordance with some embodiments.

DESCRIPTION OF EMBODIMENTS

Many electronic devices provide a media playback function for presentingmedia content (e.g., music, video, a collection of images in aslideshow, etc.). A software application that provides the mediaplayback function typically provides respective graphical user interfacecontrols for controlling various aspects of media presentation (e.g.,for starting, pausing, stopping, fast forwarding, and/or rewinding themedia content). Sometimes, the user may wish to start playing the mediacontent at a speed higher than the normal playback speed (e.g., scanningthe media content at 2×, 5×, 10×). Sometimes, while playing the mediacontent at a normal playback speed (e.g., 1×), the user may wish toincrease the playback speed to multiple times of the normal playbackspeed (e.g., scanning at 2×, 5×, 10×, 30×, etc.). Sometimes, while themedia content is being scanned at a first speed (e.g., 2×), the user maywish to change that speed to a higher speed (e.g., 5×, 10×, 30×, etc.).Sometimes, the user may wish to increase the speed for just a brieftime; while at other times, the user may wish to maintain the higherplayback speed once it has been achieved.

Here improved methods are described for controlling media presentationbased on an intensity of a press input or a profile of the intensity ofthe press input on a touch-sensitive surface of the electronic device.Depending on a current playback speed of the media presentation and arelative intensity of a press input to one or more predeterminedactivation intensity thresholds associated with different playbackspeeds, the playback speed of the media presentation may be altered. Forexample, the playback speed may increase or decrease in response tochanges in contact intensity of the press input detected on acorresponding user interface control (e.g., a fast forward control or arewind control). These methods provide more convenient and intuitiveways to control media presentation, thereby reducing the cognitiveburden on a user and increasing the effectiveness, efficiency, and usersatisfaction with such devices.

Below, FIGS. 1A-1B, 2, and 3 provide a description of exemplary devices.FIGS. 4A-4B and 5A-5F illustrate exemplary user interfaces forcontrolling media presentation. FIGS. 6A-6K illustrate exemplary controlheuristics for controlling media presentation. FIGS. 7A-7H and 8A-8C areflow diagrams of methods of controlling media presentation. The userinterfaces in FIGS. 5A-5F and the control heuristics in FIGS. 6A-6K areused to illustrate the processes in FIGS. 7A-7H and 8A-8C.

Exemplary Devices

Reference will now be made in detail to embodiments, examples of whichare illustrated in the accompanying drawings. In the following detaileddescription, numerous specific details are set forth in order to providea thorough understanding of the various described embodiments. However,it will be apparent to one of ordinary skill in the art that the variousdescribed embodiments may be practiced without these specific details.In other instances, well-known methods, procedures, components,circuits, and networks have not been described in detail so as not tounnecessarily obscure aspects of the embodiments.

It will also be understood that, although the terms first, second, etc.are, in some instances, used herein to describe various elements, theseelements should not be limited by these terms. These terms are only usedto distinguish one element from another. For example, a first contactcould be termed a second contact, and, similarly, a second contact couldbe termed a first contact, without departing from the scope of thevarious described embodiments. The first contact and the second contactare both contacts, but they are not the same contact, unless the contextclearly indicates otherwise.

The terminology used in the description of the various describedembodiments herein is for the purpose of describing particularembodiments only and is not intended to be limiting. As used in thedescription of the various described embodiments and the appendedclaims, the singular forms “a,” “an,” and “the” are intended to includethe plural forms as well, unless the context clearly indicatesotherwise. It will also be understood that the term “and/or” as usedherein refers to and encompasses any and all possible combinations ofone or more of the associated listed items. It will be furtherunderstood that the terms “includes,” “including,” “comprises,” and/or“comprising,” when used in this specification, specify the presence ofstated features, integers, steps, operations, elements, and/orcomponents, but do not preclude the presence or addition of one or moreother features, integers, steps, operations, elements, components,and/or groups thereof.

As used herein, the term “if” is, optionally, construed to mean “when”or “upon” or “in response to determining” or “in response to detecting,”depending on the context. Similarly, the phrase “if it is determined” or“if [a stated condition or event] is detected” is, optionally, construedto mean “upon determining” or “in response to determining” or “upondetecting [the stated condition or event]” or “in response to detecting[the stated condition or event],” depending on the context.

Embodiments of electronic devices, user interfaces for such devices, andassociated processes for using such devices are described. In someembodiments, the device is a portable communications device, such as amobile telephone, that also contains other functions, such as PDA and/ormusic player functions. Exemplary embodiments of portable multifunctiondevices include, without limitation, the iPhone®, iPod Touch®, and iPad®devices from Apple Inc. of Cupertino, California. Other portableelectronic devices, such as laptops or tablet computers withtouch-sensitive surfaces (e.g., touch-screen displays and/or touchpads),are, optionally, used. It should also be understood that, in someembodiments, the device is not a portable communications device, but isa desktop computer with a touch-sensitive surface (e.g., a touch-screendisplay and/or a touchpad).

In the discussion that follows, an electronic device that includes adisplay and a touch-sensitive surface is described. It should beunderstood, however, that the electronic device optionally includes oneor more other physical user-interface devices, such as a physicalkeyboard, a mouse and/or a joystick.

The device typically supports a variety of applications, such as one ormore of the following: a note taking application, a drawing application,a presentation application, a word processing application, a websitecreation application, a disk authoring application, a spreadsheetapplication, a gaming application, a telephone application, a videoconferencing application, an e-mail application, an instant messagingapplication, a workout support application, a photo managementapplication, a digital camera application, a digital video cameraapplication, a web browsing application, a digital music playerapplication, and/or a digital video player application.

The various applications that are executed on the device optionally useat least one common physical user-interface device, such as thetouch-sensitive surface. One or more functions of the touch-sensitivesurface as well as corresponding information displayed on the deviceare, optionally, adjusted and/or varied from one application to the nextand/or within a respective application. In this way, a common physicalarchitecture (such as the touch-sensitive surface) of the deviceoptionally supports the variety of applications with user interfacesthat are intuitive and transparent to the user.

Attention is now directed toward embodiments of portable devices withtouch-sensitive displays. FIG. 1A is a block diagram illustratingportable multifunction device 100 with touch-sensitive display system112 in accordance with some embodiments. Touch-sensitive display system112 is sometimes called a “touch screen” for convenience, and issometimes simply called a touch-sensitive display. Device 100 includesmemory 102 (which optionally includes one or more computer readablestorage mediums), memory controller 122, one or more processing units(CPUs) 120, peripherals interface 118, RF circuitry 108, audio circuitry110, speaker 111, microphone 113, input/output (I/O) subsystem 106,other input or control devices 116, and external port 124. Device 100optionally includes one or more optical sensors 164. Device 100optionally includes one or more intensity sensors 165 for detectingintensity of contacts on device 100 (e.g., a touch-sensitive surfacesuch as touch-sensitive display system 112 of device 100). Device 100optionally includes one or more tactile output generators 167 forgenerating tactile outputs on device 100 (e.g., generating tactileoutputs on a touch-sensitive surface such as touch-sensitive displaysystem 112 of device 100 or touchpad 355 of device 300). Thesecomponents optionally communicate over one or more communication busesor signal lines 103.

As used in the specification and claims, the term “tactile output”refers to physical displacement of a device relative to a previousposition of the device, physical displacement of a component (e.g., atouch-sensitive surface) of a device relative to another component(e.g., housing) of the device, or displacement of the component relativeto a center of mass of the device that will be detected by a user withthe user's sense of touch. For example, in situations where the deviceor the component of the device is in contact with a surface of a userthat is sensitive to touch (e.g., a finger, palm, or other part of auser's hand), the tactile output generated by the physical displacementwill be interpreted by the user as a tactile sensation corresponding toa perceived change in physical characteristics of the device or thecomponent of the device. For example, movement of a touch-sensitivesurface (e.g., a touch-sensitive display or trackpad) is, optionally,interpreted by the user as a “down click” or “up click” of a physicalactuator button. In some cases, a user will feel a tactile sensationsuch as an “down click” or “up click” even when there is no movement ofa physical actuator button associated with the touch-sensitive surfacethat is physically pressed (e.g., displaced) by the user's movements. Asanother example, movement of the touch-sensitive surface is, optionally,interpreted or sensed by the user as “roughness” of the touch-sensitivesurface, even when there is no change in smoothness of thetouch-sensitive surface. While such interpretations of touch by a userwill be subject to the individualized sensory perceptions of the user,there are many sensory perceptions of touch that are common to a largemajority of users. Thus, when a tactile output is described ascorresponding to a particular sensory perception of a user (e.g., an “upclick,” a “down click,” “roughness”), unless otherwise stated, thegenerated tactile output corresponds to physical displacement of thedevice or a component thereof that will generate the described sensoryperception for a typical (or average) user.

It should be appreciated that device 100 is only one example of aportable multifunction device, and that device 100 optionally has moreor fewer components than shown, optionally combines two or morecomponents, or optionally has a different configuration or arrangementof the components. The various components shown in FIG. 1A areimplemented in hardware, software, firmware, or a combination thereof,including one or more signal processing and/or application specificintegrated circuits.

Memory 102 optionally includes high-speed random access memory andoptionally also includes non-volatile memory, such as one or moremagnetic disk storage devices, flash memory devices, or othernon-volatile solid-state memory devices. Access to memory 102 by othercomponents of device 100, such as CPU(s) 120 and the peripheralsinterface 118, is, optionally, controlled by memory controller 122.

Peripherals interface 118 can be used to couple input and outputperipherals of the device to CPU(s) 120 and memory 102. The one or moreprocessors 120 run or execute various software programs and/or sets ofinstructions stored in memory 102 to perform various functions fordevice 100 and to process data.

In some embodiments, peripherals interface 118, CPU(s) 120, and memorycontroller 122 are, optionally, implemented on a single chip, such aschip 104. In some other embodiments, they are, optionally, implementedon separate chips.

RF (radio frequency) circuitry 108 receives and sends RF signals, alsocalled electromagnetic signals. RF circuitry 108 converts electricalsignals to/from electromagnetic signals and communicates withcommunications networks and other communications devices via theelectromagnetic signals. RF circuitry 108 optionally includes well-knowncircuitry for performing these functions, including but not limited toan antenna system, an RF transceiver, one or more amplifiers, a tuner,one or more oscillators, a digital signal processor, a CODEC chipset, asubscriber identity module (SIM) card, memory, and so forth. RFcircuitry 108 optionally communicates with networks, such as theInternet, also referred to as the World Wide Web (WWW), an intranetand/or a wireless network, such as a cellular telephone network, awireless local area network (LAN) and/or a metropolitan area network(MAN), and other devices by wireless communication. The wirelesscommunication optionally uses any of a plurality of communicationsstandards, protocols and technologies, including but not limited toGlobal System for Mobile Communications (GSM), Enhanced Data GSMEnvironment (EDGE), high-speed downlink packet access (HSDPA),high-speed uplink packet access (HSDPA), Evolution, Data-Only (EV-DO),HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), long term evolution (LTE), nearfield communication (NFC), wideband code division multiple access(W-CDMA), code division multiple access (CDMA), time division multipleaccess (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a,IEEE 802.11ac, IEEE 802.11ax, IEEE 802.11b, IEEE 802.11g and/or IEEE802.11n), voice over Internet Protocol (VoIP), Wi-MAX, a protocol fore-mail (e.g., Internet message access protocol (IMAP) and/or post officeprotocol (POP)), instant messaging (e.g., extensible messaging andpresence protocol (XMPP), Session Initiation Protocol for InstantMessaging and Presence Leveraging Extensions (SIMPLE), Instant Messagingand Presence Service (IMPS)), and/or Short Message Service (SMS), or anyother suitable communication protocol, including communication protocolsnot yet developed as of the filing date of this document.

Audio circuitry 110, speaker 111, and microphone 113 provide an audiointerface between a user and device 100. Audio circuitry 110 receivesaudio data from peripherals interface 118, converts the audio data to anelectrical signal, and transmits the electrical signal to speaker 111.Speaker 111 converts the electrical signal to human-audible sound waves.Audio circuitry 110 also receives electrical signals converted bymicrophone 113 from sound waves. Audio circuitry 110 converts theelectrical signal to audio data and transmits the audio data toperipherals interface 118 for processing. Audio data is, optionally,retrieved from and/or transmitted to memory 102 and/or RF circuitry 108by peripherals interface 118. In some embodiments, audio circuitry 110also includes a headset jack (e.g., 212, FIG. 2). The headset jackprovides an interface between audio circuitry 110 and removable audioinput/output peripherals, such as output-only headphones or a headsetwith both output (e.g., a headphone for one or both ears) and input(e.g., a microphone).

I/O subsystem 106 couples input/output peripherals on device 100, suchas touch-sensitive display system 112 and other input or control devices116, with peripherals interface 118. I/O subsystem 106 optionallyincludes display controller 156, optical sensor controller 158,intensity sensor controller 159, haptic feedback controller 161, and oneor more input controllers 160 for other input or control devices. Theone or more input controllers 160 receive/send electrical signalsfrom/to other input or control devices 116. The other input or controldevices 116 optionally include physical buttons (e.g., push buttons,rocker buttons, etc.), dials, slider switches, joysticks, click wheels,and so forth. In some alternate embodiments, input controller(s) 160are, optionally, coupled with any (or none) of the following: akeyboard, infrared port, USB port, stylus, and/or a pointer device suchas a mouse. The one or more buttons (e.g., 208, FIG. 2) optionallyinclude an up/down button for volume control of speaker 111 and/ormicrophone 113. The one or more buttons optionally include a push button(e.g., 206, FIG. 2).

Touch-sensitive display system 112 provides an input interface and anoutput interface between the device and a user. Display controller 156receives and/or sends electrical signals from/to touch-sensitive displaysystem 112. Touch-sensitive display system 112 displays visual output tothe user. The visual output optionally includes graphics, text, icons,video, and any combination thereof (collectively termed “graphics”). Insome embodiments, some or all of the visual output corresponds touser-interface objects.

Touch-sensitive display system 112 has a touch-sensitive surface, sensoror set of sensors that accepts input from the user based on hapticand/or tactile contact. Touch-sensitive display system 112 and displaycontroller 156 (along with any associated modules and/or sets ofinstructions in memory 102) detect contact (and any movement or breakingof the contact) on touch-sensitive display system 112 and converts thedetected contact into interaction with user-interface objects (e.g., oneor more soft keys, icons, web pages or images) that are displayed ontouch-sensitive display system 112. In an exemplary embodiment, a pointof contact between touch-sensitive display system 112 and the usercorresponds to a finger of the user or a stylus.

Touch-sensitive display system 112 optionally uses LCD (liquid crystaldisplay) technology, LPD (light emitting polymer display) technology, orLED (light emitting diode) technology, although other displaytechnologies are used in other embodiments. Touch-sensitive displaysystem 112 and display controller 156 optionally detect contact and anymovement or breaking thereof using any of a plurality of touch sensingtechnologies now known or later developed, including but not limited tocapacitive, resistive, infrared, and surface acoustic wave technologies,as well as other proximity sensor arrays or other elements fordetermining one or more points of contact with touch-sensitive displaysystem 112. In an exemplary embodiment, projected mutual capacitancesensing technology is used, such as that found in the iPhone®, iPodTouch®, and iPad® from Apple Inc. of Cupertino, Calif.

Touch-sensitive display system 112 optionally has a video resolution inexcess of 100 dpi. In some embodiments, the touch screen videoresolution is in excess of 400 dpi (e.g., 500 dpi, 800 dpi, or greater).The user optionally makes contact with touch-sensitive display system112 using any suitable object or appendage, such as a stylus, a finger,and so forth. In some embodiments, the user interface is designed towork with finger-based contacts and gestures, which can be less precisethan stylus-based input due to the larger area of contact of a finger onthe touch screen. In some embodiments, the device translates the roughfinger-based input into a precise pointer/cursor position or command forperforming the actions desired by the user.

In some embodiments, in addition to the touch screen, device 100optionally includes a touchpad (not shown) for activating ordeactivating particular functions. In some embodiments, the touchpad isa touch-sensitive area of the device that, unlike the touch screen, doesnot display visual output. The touchpad is, optionally, atouch-sensitive surface that is separate from touch-sensitive displaysystem 112 or an extension of the touch-sensitive surface formed by thetouch screen.

Device 100 also includes power system 162 for powering the variouscomponents. Power system 162 optionally includes a power managementsystem, one or more power sources (e.g., battery, alternating current(AC)), a recharging system, a power failure detection circuit, a powerconverter or inverter, a power status indicator (e.g., a light-emittingdiode (LED)) and any other components associated with the generation,management and distribution of power in portable devices.

Device 100 optionally also includes one or more optical sensors 164.FIG. 1A shows an optical sensor coupled with optical sensor controller158 in I/O subsystem 106. Optical sensor(s) 164 optionally includecharge-coupled device (CCD) or complementary metal-oxide semiconductor(CMOS) phototransistors. Optical sensor(s) 164 receive light from theenvironment, projected through one or more lens, and converts the lightto data representing an image. In conjunction with imaging module 143(also called a camera module), optical sensor(s) 164 optionally capturestill images and/or video. In some embodiments, an optical sensor islocated on the back of device 100, opposite touch-sensitive displaysystem 112 on the front of the device, so that the touch screen isenabled for use as a viewfinder for still and/or video imageacquisition. In some embodiments, another optical sensor is located onthe front of the device so that the user's image is obtained (e.g., forselfies, for videoconferencing while the user views the other videoconference participants on the touch screen, etc.).

Device 100 optionally also includes one or more contact intensitysensors 165. FIG. 1A shows a contact intensity sensor coupled withintensity sensor controller 159 in I/O subsystem 106. Contact intensitysensor(s) 165 optionally include one or more piezoresistive straingauges, capacitive force sensors, electric force sensors, piezoelectricforce sensors, optical force sensors, capacitive touch-sensitivesurfaces, or other intensity sensors (e.g., sensors used to measure theforce (or pressure) of a contact on a touch-sensitive surface). Contactintensity sensor(s) 165 receive contact intensity information (e.g.,pressure information or a proxy for pressure information) from theenvironment. In some embodiments, at least one contact intensity sensoris collocated with, or proximate to, a touch-sensitive surface (e.g.,touch-sensitive display system 112). In some embodiments, at least onecontact intensity sensor is located on the back of device 100, oppositetouch-screen display system 112 which is located on the front of device100.

Device 100 optionally also includes one or more proximity sensors 166.FIG. 1A shows proximity sensor 166 coupled with peripherals interface118. Alternately, proximity sensor 166 is coupled with input controller160 in I/O subsystem 106. In some embodiments, the proximity sensorturns off and disables touch-sensitive display system 112 when themultifunction device is placed near the user's ear (e.g., when the useris making a phone call).

Device 100 optionally also includes one or more tactile outputgenerators 167. FIG. 1A shows a tactile output generator coupled withhaptic feedback controller 161 in I/O subsystem 106. Tactile outputgenerator(s) 167 optionally include one or more electroacoustic devicessuch as speakers or other audio components and/or electromechanicaldevices that convert energy into linear motion such as a motor,solenoid, electroactive polymer, piezoelectric actuator, electrostaticactuator, or other tactile output generating component (e.g., acomponent that converts electrical signals into tactile outputs on thedevice). Tactile output generator(s) 167 receive tactile feedbackgeneration instructions from haptic feedback module 133 and generatestactile outputs on device 100 that are capable of being sensed by a userof device 100. In some embodiments, at least one tactile outputgenerator is collocated with, or proximate to, a touch-sensitive surface(e.g., touch-sensitive display system 112) and, optionally, generates atactile output by moving the touch-sensitive surface vertically (e.g.,in/out of a surface of device 100) or laterally (e.g., back and forth inthe same plane as a surface of device 100). In some embodiments, atleast one tactile output generator sensor is located on the back ofdevice 100, opposite touch-sensitive display system 112, which islocated on the front of device 100.

Device 100 optionally also includes one or more accelerometers 168. FIG.1A shows accelerometer 168 coupled with peripherals interface 118.Alternately, accelerometer 168 is, optionally, coupled with an inputcontroller 160 in I/O subsystem 106. In some embodiments, information isdisplayed on the touch-screen display in a portrait view or a landscapeview based on an analysis of data received from the one or moreaccelerometers. Device 100 optionally includes, in addition toaccelerometer(s) 168, a magnetometer (not shown) and a GPS (or GLONASSor other global navigation system) receiver (not shown) for obtaininginformation concerning the location and orientation (e.g., portrait orlandscape) of device 100.

In some embodiments, the software components stored in memory 102include operating system 126, communication module (or set ofinstructions) 128, contact/motion module (or set of instructions) 130,graphics module (or set of instructions) 132, haptic feedback module (orset of instructions) 133, text input module (or set of instructions)134, Global Positioning System (GPS) module (or set of instructions)135, and applications (or sets of instructions) 136. Furthermore, insome embodiments, memory 102 stores device/global internal state 157, asshown in FIGS. 1A and 3. Device/global internal state 157 includes oneor more of: active application state, indicating which applications, ifany, are currently active; display state, indicating what applications,views or other information occupy various regions of touch-sensitivedisplay system 112; sensor state, including information obtained fromthe device's various sensors and other input or control devices 116; andlocation and/or positional information concerning the device's locationand/or attitude.

Operating system 126 (e.g., iOS, Darwin, RTXC, LINUX, UNIX, OS X,WINDOWS, or an embedded operating system such as VxWorks) includesvarious software components and/or drivers for controlling and managinggeneral system tasks (e.g., memory management, storage device control,power management, etc.) and facilitates communication between varioushardware and software components.

Communication module 128 facilitates communication with other devicesover one or more external ports 124 and also includes various softwarecomponents for handling data received by RF circuitry 108 and/orexternal port 124. External port 124 (e.g., Universal Serial Bus (USB),FIREWIRE, etc.) is adapted for coupling directly to other devices orindirectly over a network (e.g., the Internet, wireless LAN, etc.). Insome embodiments, the external port is a multi-pin (e.g., 30-pin)connector that is the same as, or similar to and/or compatible with the30-pin connector used in some iPhone®, iPod Touch®, and iPad® devicesfrom Apple Inc. of Cupertino, Calif. In some embodiments, the externalport is a Lightning connector that is the same as, or similar to and/orcompatible with the Lightning connector used in some iPhone®, iPodTouch®, and iPad® devices from Apple Inc. of Cupertino, Calif.

Contact/motion module 130 optionally detects contact withtouch-sensitive display system 112 (in conjunction with displaycontroller 156) and other touch-sensitive devices (e.g., a touchpad orphysical click wheel). Contact/motion module 130 includes varioussoftware components for performing various operations related todetection of contact (e.g., by a finger or by a stylus), such asdetermining if contact has occurred (e.g., detecting a finger-downevent), determining an intensity of the contact (e.g., the force orpressure of the contact or a substitute for the force or pressure of thecontact), determining if there is movement of the contact and trackingthe movement across the touch-sensitive surface (e.g., detecting one ormore finger-dragging events), and determining if the contact has ceased(e.g., detecting a finger-up event or a break in contact).Contact/motion module 130 receives contact data from the touch-sensitivesurface. Determining movement of the point of contact, which isrepresented by a series of contact data, optionally includes determiningspeed (magnitude), velocity (magnitude and direction), and/or anacceleration (a change in magnitude and/or direction) of the point ofcontact. These operations are, optionally, applied to single contacts(e.g., one finger contacts or stylus contacts) or to multiplesimultaneous contacts (e.g., “multitouch”/multiple finger contacts). Insome embodiments, contact/motion module 130 and display controller 156detect contact on a touchpad.

Contact/motion module 130 optionally detects a gesture input by a user.Different gestures on the touch-sensitive surface have different contactpatterns (e.g., different motions, timings, and/or intensities ofdetected contacts). Thus, a gesture is, optionally, detected bydetecting a particular contact pattern. For example, detecting a fingertap gesture includes detecting a finger-down event followed by detectinga finger-up (lift off) event at the same position (or substantially thesame position) as the finger-down event (e.g., at the position of anicon). As another example, detecting a finger swipe gesture on thetouch-sensitive surface includes detecting a finger-down event followedby detecting one or more finger-dragging events, and subsequentlyfollowed by detecting a finger-up (lift off) event. Similarly, tap,swipe, drag, and other gestures are optionally detected for a stylus bydetecting a particular contact pattern for the stylus.

Graphics module 132 includes various known software components forrendering and displaying graphics on touch-sensitive display system 112or other display, including components for changing the visual impact(e.g., brightness, transparency, saturation, contrast or other visualproperty) of graphics that are displayed. As used herein, the term“graphics” includes any object that can be displayed to a user,including without limitation text, web pages, icons (such asuser-interface objects including soft keys), digital images, videos,animations and the like.

In some embodiments, graphics module 132 stores data representinggraphics to be used. Each graphic is, optionally, assigned acorresponding code. Graphics module 132 receives, from applicationsetc., one or more codes specifying graphics to be displayed along with,if necessary, coordinate data and other graphic property data, and thengenerates screen image data to output to display controller 156.

Haptic feedback module 133 includes various software components forgenerating instructions used by tactile output generator(s) 167 toproduce tactile outputs at one or more locations on device 100 inresponse to user interactions with device 100.

Text input module 134, which is, optionally, a component of graphicsmodule 132, provides soft keyboards for entering text in variousapplications (e.g., contacts 137, e-mail 140, IM 141, browser 147, andany other application that needs text input).

GPS module 135 determines the location of the device and provides thisinformation for use in various applications (e.g., to telephone 138 foruse in location-based dialing, to camera 143 as picture/video metadata,and to applications that provide location-based services such as weatherwidgets, local yellow page widgets, and map/navigation widgets).

Applications 136 optionally include the following modules (or sets ofinstructions), or a subset or superset thereof:

-   -   contacts module 137 (sometimes called an address book or contact        list);    -   telephone module 138;    -   video conferencing module 139;    -   e-mail client module 140;    -   instant messaging (IM) module 141;    -   workout support module 142;    -   camera module 143 for still and/or video images;    -   image management module 144;    -   browser module 147;    -   calendar module 148;    -   widget modules 149, which optionally include one or more of:        weather widget 149-1, stocks widget 149-2, calculator widget        149-3, alarm clock widget 149-4, dictionary widget 149-5, and        other widgets obtained by the user, as well as user-created        widgets 149-6;    -   widget creator module 150 for making user-created widgets 149-6;    -   search module 151;    -   video and music player module 152, which is, optionally, made up        of a video player module and a music player module;    -   notes module 153;    -   map module 154; and/or    -   online video module 155.

Examples of other applications 136 that are, optionally, stored inmemory 102 include other word processing applications, other imageediting applications, drawing applications, presentation applications,JAVA-enabled applications, encryption, digital rights management, voicerecognition, and voice replication.

In conjunction with touch-sensitive display system 112, displaycontroller 156, contact module 130, graphics module 132, and text inputmodule 134, contacts module 137 includes executable instructions tomanage an address book or contact list (e.g., stored in applicationinternal state 192 of contacts module 137 in memory 102 or memory 370),including: adding name(s) to the address book; deleting name(s) from theaddress book; associating telephone number(s), e-mail address(es),physical address(es) or other information with a name; associating animage with a name; categorizing and sorting names; providing telephonenumbers and/or e-mail addresses to initiate and/or facilitatecommunications by telephone 138, video conference 139, e-mail 140, or IM141; and so forth.

In conjunction with RF circuitry 108, audio circuitry 110, speaker 111,microphone 113, touch-sensitive display system 112, display controller156, contact module 130, graphics module 132, and text input module 134,telephone module 138 includes executable instructions to enter asequence of characters corresponding to a telephone number, access oneor more telephone numbers in address book 137, modify a telephone numberthat has been entered, dial a respective telephone number, conduct aconversation and disconnect or hang up when the conversation iscompleted. As noted above, the wireless communication optionally usesany of a plurality of communications standards, protocols andtechnologies.

In conjunction with RF circuitry 108, audio circuitry 110, speaker 111,microphone 113, touch-sensitive display system 112, display controller156, optical sensor(s) 164, optical sensor controller 158, contactmodule 130, graphics module 132, text input module 134, contact list137, and telephone module 138, videoconferencing module 139 includesexecutable instructions to initiate, conduct, and terminate a videoconference between a user and one or more other participants inaccordance with user instructions.

In conjunction with RF circuitry 108, touch-sensitive display system112, display controller 156, contact module 130, graphics module 132,and text input module 134, e-mail client module 140 includes executableinstructions to create, send, receive, and manage e-mail in response touser instructions. In conjunction with image management module 144,e-mail client module 140 makes it very easy to create and send e-mailswith still or video images taken with camera module 143.

In conjunction with RF circuitry 108, touch-sensitive display system112, display controller 156, contact module 130, graphics module 132,and text input module 134, the instant messaging module 141 includesexecutable instructions to enter a sequence of characters correspondingto an instant message, to modify previously entered characters, totransmit a respective instant message (for example, using a ShortMessage Service (SMS) or Multimedia Message Service (MMS) protocol fortelephony-based instant messages or using XMPP, SIMPLE, Apple PushNotification Service (APNs) or IMPS for Internet-based instantmessages), to receive instant messages and to view received instantmessages. In some embodiments, transmitted and/or received instantmessages optionally include graphics, photos, audio files, video filesand/or other attachments as are supported in a MMS and/or an EnhancedMessaging Service (EMS). As used herein, “instant messaging” refers toboth telephony-based messages (e.g., messages sent using SMS or MMS) andInternet-based messages (e.g., messages sent using XMPP, SIMPLE, APNs,or IMPS).

In conjunction with RF circuitry 108, touch-sensitive display system112, display controller 156, contact module 130, graphics module 132,text input module 134, GPS module 135, map module 154, and music playermodule 146, workout support module 142 includes executable instructionsto create workouts (e.g., with time, distance, and/or calorie burninggoals); communicate with workout sensors (in sports devices and smartwatches); receive workout sensor data; calibrate sensors used to monitora workout; select and play music for a workout; and display, store andtransmit workout data.

In conjunction with touch-sensitive display system 112, displaycontroller 156, optical sensor(s) 164, optical sensor controller 158,contact module 130, graphics module 132, and image management module144, camera module 143 includes executable instructions to capture stillimages or video (including a video stream) and store them into memory102, modify characteristics of a still image or video, and/or delete astill image or video from memory 102.

In conjunction with touch-sensitive display system 112, displaycontroller 156, contact module 130, graphics module 132, text inputmodule 134, and camera module 143, image management module 144 includesexecutable instructions to arrange, modify (e.g., edit), or otherwisemanipulate, label, delete, present (e.g., in a digital slide show oralbum), and store still and/or video images.

In conjunction with RF circuitry 108, touch-sensitive display system112, display system controller 156, contact module 130, graphics module132, and text input module 134, browser module 147 includes executableinstructions to browse the Internet in accordance with userinstructions, including searching, linking to, receiving, and displayingweb pages or portions thereof, as well as attachments and other fileslinked to web pages.

In conjunction with RF circuitry 108, touch-sensitive display system112, display system controller 156, contact module 130, graphics module132, text input module 134, e-mail client module 140, and browser module147, calendar module 148 includes executable instructions to create,display, modify, and store calendars and data associated with calendars(e.g., calendar entries, to do lists, etc.) in accordance with userinstructions.

In conjunction with RF circuitry 108, touch-sensitive display system112, display system controller 156, contact module 130, graphics module132, text input module 134, and browser module 147, widget modules 149are mini-applications that are, optionally, downloaded and used by auser (e.g., weather widget 149-1, stocks widget 149-2, calculator widget149-3, alarm clock widget 149-4, and dictionary widget 149-5) or createdby the user (e.g., user-created widget 149-6). In some embodiments, awidget includes an HTML (Hypertext Markup Language) file, a CSS(Cascading Style Sheets) file, and a JavaScript file. In someembodiments, a widget includes an XML (Extensible Markup Language) fileand a JavaScript file (e.g., Yahoo! Widgets).

In conjunction with RF circuitry 108, touch-sensitive display system112, display system controller 156, contact module 130, graphics module132, text input module 134, and browser module 147, the widget creatormodule 150 includes executable instructions to create widgets (e.g.,turning a user-specified portion of a web page into a widget).

In conjunction with touch-sensitive display system 112, display systemcontroller 156, contact module 130, graphics module 132, and text inputmodule 134, search module 151 includes executable instructions to searchfor text, music, sound, image, video, and/or other files in memory 102that match one or more search criteria (e.g., one or more user-specifiedsearch terms) in accordance with user instructions.

In conjunction with touch-sensitive display system 112, display systemcontroller 156, contact module 130, graphics module 132, audio circuitry110, speaker 111, RF circuitry 108, and browser module 147, video andmusic player module 152 includes executable instructions that allow theuser to download and play back recorded music and other sound filesstored in one or more file formats, such as MP3 or AAC files, andexecutable instructions to display, present or otherwise play backvideos (e.g., on touch-sensitive display system 112, or on an externaldisplay connected wirelessly or via external port 124). In someembodiments, device 100 optionally includes the functionality of an MP3player, such as an iPod (trademark of Apple Inc.).

In conjunction with touch-sensitive display system 112, displaycontroller 156, contact module 130, graphics module 132, and text inputmodule 134, notes module 153 includes executable instructions to createand manage notes, to do lists, and the like in accordance with userinstructions.

In conjunction with RF circuitry 108, touch-sensitive display system112, display system controller 156, contact module 130, graphics module132, text input module 134, GPS module 135, and browser module 147, mapmodule 154 includes executable instructions to receive, display, modify,and store maps and data associated with maps (e.g., driving directions;data on stores and other points of interest at or near a particularlocation; and other location-based data) in accordance with userinstructions.

In conjunction with touch-sensitive display system 112, display systemcontroller 156, contact module 130, graphics module 132, audio circuitry110, speaker 111, RF circuitry 108, text input module 134, e-mail clientmodule 140, and browser module 147, online video module 155 includesexecutable instructions that allow the user to access, browse, receive(e.g., by streaming and/or download), play back (e.g., on the touchscreen 112, or on an external display connected wirelessly or viaexternal port 124), send an e-mail with a link to a particular onlinevideo, and otherwise manage online videos in one or more file formats,such as H.264. In some embodiments, instant messaging module 141, ratherthan e-mail client module 140, is used to send a link to a particularonline video.

Each of the above identified modules and applications correspond to aset of executable instructions for performing one or more functionsdescribed above and the methods described in this application (e.g., thecomputer-implemented methods and other information processing methodsdescribed herein). These modules (i.e., sets of instructions) need notbe implemented as separate software programs, procedures or modules, andthus various subsets of these modules are, optionally, combined orotherwise re-arranged in various embodiments. In some embodiments,memory 102 optionally stores a subset of the modules and data structuresidentified above. Furthermore, memory 102 optionally stores additionalmodules and data structures not described above.

In some embodiments, device 100 is a device where operation of apredefined set of functions on the device is performed exclusivelythrough a touch screen and/or a touchpad. By using a touch screen and/ora touchpad as the primary input control device for operation of device100, the number of physical input control devices (such as push buttons,dials, and the like) on device 100 is, optionally, reduced.

The predefined set of functions that are performed exclusively through atouch screen and/or a touchpad optionally include navigation betweenuser interfaces. In some embodiments, the touchpad, when touched by theuser, navigates device 100 to a main, home, or root menu from any userinterface that is displayed on device 100. In such embodiments, a “menubutton” is implemented using a touchpad. In some other embodiments, themenu button is a physical push button or other physical input controldevice instead of a touchpad.

FIG. 1B is a block diagram illustrating exemplary components for eventhandling in accordance with some embodiments. In some embodiments,memory 102 (in FIGS. 1A) or 370 (FIG. 3) includes event sorter 170(e.g., in operating system 126) and a respective application 136-1(e.g., any of the aforementioned applications 136, 137-155, 380-390).

Event sorter 170 receives event information and determines theapplication 136-1 and application view 191 of application 136-1 to whichto deliver the event information. Event sorter 170 includes eventmonitor 171 and event dispatcher module 174. In some embodiments,application 136-1 includes application internal state 192, whichindicates the current application view(s) displayed on touch-sensitivedisplay system 112 when the application is active or executing. In someembodiments, device/global internal state 157 is used by event sorter170 to determine which application(s) is (are) currently active, andapplication internal state 192 is used by event sorter 170 to determineapplication views 191 to which to deliver event information.

In some embodiments, application internal state 192 includes additionalinformation, such as one or more of: resume information to be used whenapplication 136-1 resumes execution, user interface state informationthat indicates information being displayed or that is ready for displayby application 136-1, a state queue for enabling the user to go back toa prior state or view of application 136-1, and a redo/undo queue ofprevious actions taken by the user.

Event monitor 171 receives event information from peripherals interface118. Event information includes information about a sub-event (e.g., auser touch on touch-sensitive display system 112, as part of amulti-touch gesture). Peripherals interface 118 transmits information itreceives from I/O subsystem 106 or a sensor, such as proximity sensor166, accelerometer(s) 168, and/or microphone 113 (through audiocircuitry 110). Information that peripherals interface 118 receives fromI/O subsystem 106 includes information from touch-sensitive displaysystem 112 or a touch-sensitive surface.

In some embodiments, event monitor 171 sends requests to the peripheralsinterface 118 at predetermined intervals. In response, peripheralsinterface 118 transmits event information. In other embodiments,peripheral interface 118 transmits event information only when there isa significant event (e.g., receiving an input above a predeterminednoise threshold and/or for more than a predetermined duration).

In some embodiments, event sorter 170 also includes a hit viewdetermination module 172 and/or an active event recognizer determinationmodule 173.

Hit view determination module 172 provides software procedures fordetermining where a sub-event has taken place within one or more views,when touch-sensitive display system 112 displays more than one view.Views are made up of controls and other elements that a user can see onthe display.

Another aspect of the user interface associated with an application is aset of views, sometimes herein called application views or userinterface windows, in which information is displayed and touch-basedgestures occur. The application views (of a respective application) inwhich a touch is detected optionally correspond to programmatic levelswithin a programmatic or view hierarchy of the application. For example,the lowest level view in which a touch is detected is, optionally,called the hit view, and the set of events that are recognized as properinputs are, optionally, determined based, at least in part, on the hitview of the initial touch that begins a touch-based gesture.

Hit view determination module 172 receives information related tosub-events of a touch-based gesture. When an application has multipleviews organized in a hierarchy, hit view determination module 172identifies a hit view as the lowest view in the hierarchy which shouldhandle the sub-event. In most circumstances, the hit view is the lowestlevel view in which an initiating sub-event occurs (i.e., the firstsub-event in the sequence of sub-events that form an event or potentialevent). Once the hit view is identified by the hit view determinationmodule, the hit view typically receives all sub-events related to thesame touch or input source for which it was identified as the hit view.

Active event recognizer determination module 173 determines which viewor views within a view hierarchy should receive a particular sequence ofsub-events. In some embodiments, active event recognizer determinationmodule 173 determines that only the hit view should receive a particularsequence of sub-events. In other embodiments, active event recognizerdetermination module 173 determines that all views that include thephysical location of a sub-event are actively involved views, andtherefore determines that all actively involved views should receive aparticular sequence of sub-events. In other embodiments, even if touchsub-events were entirely confined to the area associated with oneparticular view, views higher in the hierarchy would still remain asactively involved views.

Event dispatcher module 174 dispatches the event information to an eventrecognizer (e.g., event recognizer 180). In embodiments including activeevent recognizer determination module 173, event dispatcher module 174delivers the event information to an event recognizer determined byactive event recognizer determination module 173. In some embodiments,event dispatcher module 174 stores in an event queue the eventinformation, which is retrieved by a respective event receiver module182.

In some embodiments, operating system 126 includes event sorter 170.Alternatively, application 136-1 includes event sorter 170. In yet otherembodiments, event sorter 170 is a stand-alone module, or a part ofanother module stored in memory 102, such as contact/motion module 130.

In some embodiments, application 136-1 includes a plurality of eventhandlers 190 and one or more application views 191, each of whichincludes instructions for handling touch events that occur within arespective view of the application's user interface. Each applicationview 191 of the application 136-1 includes one or more event recognizers180. Typically, a respective application view 191 includes a pluralityof event recognizers 180. In other embodiments, one or more of eventrecognizers 180 are part of a separate module, such as a user interfacekit (not shown) or a higher level object from which application 136-1inherits methods and other properties. In some embodiments, a respectiveevent handler 190 includes one or more of: data updater 176, objectupdater 177, GUI updater 178, and/or event data 179 received from eventsorter 170. Event handler 190 optionally utilizes or calls data updater176, object updater 177 or GUI updater 178 to update the applicationinternal state 192. Alternatively, one or more of the application views191 includes one or more respective event handlers 190. Also, in someembodiments, one or more of data updater 176, object updater 177, andGUI updater 178 are included in a respective application view 191.

A respective event recognizer 180 receives event information (e.g.,event data 179) from event sorter 170, and identifies an event from theevent information. Event recognizer 180 includes event receiver 182 andevent comparator 184. In some embodiments, event recognizer 180 alsoincludes at least a subset of: metadata 183, and event deliveryinstructions 188 (which optionally include sub-event deliveryinstructions).

Event receiver 182 receives event information from event sorter 170. Theevent information includes information about a sub-event, for example, atouch or a touch movement. Depending on the sub-event, the eventinformation also includes additional information, such as location ofthe sub-event. When the sub-event concerns motion of a touch, the eventinformation optionally also includes speed and direction of thesub-event. In some embodiments, events include rotation of the devicefrom one orientation to another (e.g., from a portrait orientation to alandscape orientation, or vice versa), and the event informationincludes corresponding information about the current orientation (alsocalled device attitude) of the device.

Event comparator 184 compares the event information to predefined eventor sub-event definitions and, based on the comparison, determines anevent or sub-event, or determines or updates the state of an event orsub-event. In some embodiments, event comparator 184 includes eventdefinitions 186. Event definitions 186 contain definitions of events(e.g., predefined sequences of sub-events), for example, event 1(187-1), event 2 (187-2), and others. In some embodiments, sub-events inan event 187 include, for example, touch begin, touch end, touchmovement, touch cancellation, and multiple touching. In one example, thedefinition for event 1 (187-1) is a double tap on a displayed object.The double tap, for example, comprises a first touch (touch begin) onthe displayed object for a predetermined phase, a first lift-off (touchend) for a predetermined phase, a second touch (touch begin) on thedisplayed object for a predetermined phase, and a second lift-off (touchend) for a predetermined phase. In another example, the definition forevent 2 (187-2) is a dragging on a displayed object. The dragging, forexample, comprises a touch (or contact) on the displayed object for apredetermined phase, a movement of the touch across touch-sensitivedisplay system 112, and lift-off of the touch (touch end). In someembodiments, the event also includes information for one or moreassociated event handlers 190.

In some embodiments, event definition 187 includes a definition of anevent for a respective user-interface object. In some embodiments, eventcomparator 184 performs a hit test to determine which user-interfaceobject is associated with a sub-event. For example, in an applicationview in which three user-interface objects are displayed ontouch-sensitive display system 112, when a touch is detected ontouch-sensitive display system 112, event comparator 184 performs a hittest to determine which of the three user-interface objects isassociated with the touch (sub-event). If each displayed object isassociated with a respective event handler 190, the event comparatoruses the result of the hit test to determine which event handler 190should be activated. For example, event comparator 184 selects an eventhandler associated with the sub-event and the object triggering the hittest.

In some embodiments, the definition for a respective event 187 alsoincludes delayed actions that delay delivery of the event informationuntil after it has been determined whether the sequence of sub-eventsdoes or does not correspond to the event recognizer's event type.

When a respective event recognizer 180 determines that the series ofsub-events do not match any of the events in event definitions 186, therespective event recognizer 180 enters an event impossible, eventfailed, or event ended state, after which it disregards subsequentsub-events of the touch-based gesture. In this situation, other eventrecognizers, if any, that remain active for the hit view continue totrack and process sub-events of an ongoing touch-based gesture.

In some embodiments, a respective event recognizer 180 includes metadata183 with configurable properties, flags, and/or lists that indicate howthe event delivery system should perform sub-event delivery to activelyinvolved event recognizers. In some embodiments, metadata 183 includesconfigurable properties, flags, and/or lists that indicate how eventrecognizers interact, or are enabled to interact, with one another. Insome embodiments, metadata 183 includes configurable properties, flags,and/or lists that indicate whether sub-events are delivered to varyinglevels in the view or programmatic hierarchy.

In some embodiments, a respective event recognizer 180 activates eventhandler 190 associated with an event when one or more particularsub-events of an event are recognized. In some embodiments, a respectiveevent recognizer 180 delivers event information associated with theevent to event handler 190. Activating an event handler 190 is distinctfrom sending (and deferred sending) sub-events to a respective hit view.In some embodiments, event recognizer 180 throws a flag associated withthe recognized event, and event handler 190 associated with the flagcatches the flag and performs a predefined process.

In some embodiments, event delivery instructions 188 include sub-eventdelivery instructions that deliver event information about a sub-eventwithout activating an event handler. Instead, the sub-event deliveryinstructions deliver event information to event handlers associated withthe series of sub-events or to actively involved views. Event handlersassociated with the series of sub-events or with actively involved viewsreceive the event information and perform a predetermined process.

In some embodiments, data updater 176 creates and updates data used inapplication 136-1. For example, data updater 176 updates the telephonenumber used in contacts module 137, or stores a video file used in videoplayer module 145. In some embodiments, object updater 177 creates andupdates objects used in application 136-1. For example, object updater177 creates a new user-interface object or updates the position of auser-interface object. GUI updater 178 updates the GUI. For example, GUIupdater 178 prepares display information and sends it to graphics module132 for display on a touch-sensitive display.

In some embodiments, event handler(s) 190 includes or has access to dataupdater 176, object updater 177, and GUI updater 178. In someembodiments, data updater 176, object updater 177, and GUI updater 178are included in a single module of a respective application 136-1 orapplication view 191. In other embodiments, they are included in two ormore software modules.

It shall be understood that the foregoing discussion regarding eventhandling of user touches on touch-sensitive displays also applies toother forms of user inputs to operate multifunction devices 100 withinput-devices, not all of which are initiated on touch screens. Forexample, mouse movement and mouse button presses, optionally coordinatedwith single or multiple keyboard presses or holds; contact movementssuch as taps, drags, scrolls, etc., on touch-pads; pen stylus inputs;movement of the device; oral instructions; detected eye movements;biometric inputs; and/or any combination thereof are optionally utilizedas inputs corresponding to sub-events which define an event to berecognized.

FIG. 2 illustrates a portable multifunction device 100 having a touchscreen (e.g., touch-sensitive display system 112, FIG. 1A) in accordancewith some embodiments. The touch screen optionally displays one or moregraphics within user interface (UI) 200. In this embodiment, as well asothers described below, a user is enabled to select one or more of thegraphics by making a gesture on the graphics, for example, with one ormore fingers 202 (not drawn to scale in the figure) or one or morestyluses 203 (not drawn to scale in the figure). In some embodiments,selection of one or more graphics occurs when the user breaks contactwith the one or more graphics. In some embodiments, the gestureoptionally includes one or more taps, one or more swipes (from left toright, right to left, upward and/or downward) and/or a rolling of afinger (from right to left, left to right, upward and/or downward) thathas made contact with device 100. In some implementations orcircumstances, inadvertent contact with a graphic does not select thegraphic. For example, a swipe gesture that sweeps over an applicationicon optionally does not select the corresponding application when thegesture corresponding to selection is a tap.

Device 100 optionally also includes one or more physical buttons, suchas “home” or menu button 204. As described previously, menu button 204is, optionally, used to navigate to any application 136 in a set ofapplications that are, optionally executed on device 100. Alternatively,in some embodiments, the menu button is implemented as a soft key in aGUI displayed on the touch-screen display.

In some embodiments, device 100 includes the touch-screen display, menubutton 204, push button 206 for powering the device on/off and lockingthe device, volume adjustment button(s) 208, Subscriber Identity Module(SIM) card slot 210, head set jack 212, and docking/charging externalport 124. Push button 206 is, optionally, used to turn the power on/offon the device by depressing the button and holding the button in thedepressed state for a predefined time interval; to lock the device bydepressing the button and releasing the button before the predefinedtime interval has elapsed; and/or to unlock the device or initiate anunlock process. In some embodiments, device 100 also accepts verbalinput for activation or deactivation of some functions throughmicrophone 113. Device 100 also, optionally, includes one or morecontact intensity sensors 165 for detecting intensity of contacts ontouch-sensitive display system 112 and/or one or more tactile outputgenerators 167 for generating tactile outputs for a user of device 100.

FIG. 3 is a block diagram of an exemplary multifunction device with adisplay and a touch-sensitive surface in accordance with someembodiments. Device 300 need not be portable. In some embodiments,device 300 is a laptop computer, a desktop computer, a tablet computer,a multimedia player device, a navigation device, an educational device(such as a child's learning toy), a gaming system, or a control device(e.g., a home or industrial controller). Device 300 typically includesone or more processing units (CPU's) 310, one or more network or othercommunications interfaces 360, memory 370, and one or more communicationbuses 320 for interconnecting these components. Communication buses 320optionally include circuitry (sometimes called a chipset) thatinterconnects and controls communications between system components.Device 300 includes input/output (I/O) interface 330 comprising display340, which is typically a touch-screen display. I/O interface 330 alsooptionally includes a keyboard and/or mouse (or other pointing device)350 and touchpad 355, tactile output generator 357 for generatingtactile outputs on device 300 (e.g., similar to tactile outputgenerator(s) 167 described above with reference to FIG. 1A), sensors 359(e.g., optical, acceleration, proximity, touch-sensitive, and/or contactintensity sensors similar to contact intensity sensor(s) 165 describedabove with reference to FIG. 1A). Memory 370 includes high-speed randomaccess memory, such as DRAM, SRAM, DDR RAM or other random access solidstate memory devices; and optionally includes non-volatile memory, suchas one or more magnetic disk storage devices, optical disk storagedevices, flash memory devices, or other non-volatile solid state storagedevices. Memory 370 optionally includes one or more storage devicesremotely located from CPU(s) 310. In some embodiments, memory 370 storesprograms, modules, and data structures analogous to the programs,modules, and data structures stored in memory 102 of portablemultifunction device 100 (FIG. 1A), or a subset thereof. Furthermore,memory 370 optionally stores additional programs, modules, and datastructures not present in memory 102 of portable multifunction device100. For example, memory 370 of device 300 optionally stores drawingmodule 380, presentation module 382, word processing module 384, websitecreation module 386, disk authoring module 388, and/or spreadsheetmodule 390, while memory 102 of portable multifunction device 100 (FIG.1A) optionally does not store these modules.

Each of the above identified elements in FIG. 3 are, optionally, storedin one or more of the previously mentioned memory devices. Each of theabove identified modules corresponds to a set of instructions forperforming a function described above. The above identified modules orprograms (i.e., sets of instructions) need not be implemented asseparate software programs, procedures or modules, and thus varioussubsets of these modules are, optionally, combined or otherwisere-arranged in various embodiments. In some embodiments, memory 370optionally stores a subset of the modules and data structures identifiedabove. Furthermore, memory 370 optionally stores additional modules anddata structures not described above.

Attention is now directed towards embodiments of user interfaces (“UI”)that are, optionally, implemented on portable multifunction device 100.

FIG. 4A illustrates an exemplary user interface for a menu ofapplications on portable multifunction device 100 in accordance withsome embodiments. Similar user interfaces are, optionally, implementedon device 300. In some embodiments, user interface 400 includes thefollowing elements, or a subset or superset thereof:

-   -   Signal strength indicator(s) 402 for wireless communication(s),        such as cellular and Wi-Fi signals;    -   Time 404;    -   Bluetooth indicator 405;    -   Battery status indicator 406;    -   Tray 408 with icons for frequently used applications, such as:        -   Icon 416 for telephone module 138, labeled “Phone,” which            optionally includes an indicator 414 of the number of missed            calls or voicemail messages;        -   Icon 418 for e-mail client module 140, labeled “Mail,” which            optionally includes an indicator 410 of the number of unread            e-mails;        -   Icon 420 for browser module 147, labeled “Browser;” and        -   Icon 422 for video and music player module 152, also            referred to as iPod (trademark of Apple Inc.) module 152,            labeled “iPod;” and    -   Icons for other applications, such as:        -   Icon 424 for IM module 141, labeled “Messages;”        -   Icon 426 for calendar module 148, labeled “Calendar;”        -   Icon 428 for image management module 144, labeled “Photos;”        -   Icon 430 for camera module 143, labeled “Camera;”        -   Icon 432 for online video module 155, labeled “Online            Video;”        -   Icon 434 for stocks widget 149-2, labeled “Stocks;”        -   Icon 436 for map module 154, labeled “Maps;”        -   Icon 438 for weather widget 149-1, labeled “Weather;”        -   Icon 440 for alarm clock widget 149-4, labeled “Clock;”        -   Icon 442 for workout support module 142, labeled “Workout            Support;”        -   Icon 444 for notes module 153, labeled “Notes;” and        -   Icon 446 for a settings application or module, which            provides access to settings for device 100 and its various            applications 136.

It should be noted that the icon labels illustrated in FIG. 4A aremerely exemplary. For example, in some embodiments, icon 422 for videoand music player module 152 is labeled “Music” or “Music Player.” Otherlabels are, optionally, used for various application icons. In someembodiments, a label for a respective application icon includes a nameof an application corresponding to the respective application icon. Insome embodiments, a label for a particular application icon is distinctfrom a name of an application corresponding to the particularapplication icon.

FIG. 4B illustrates an exemplary user interface on a device (e.g.,device 300, FIG. 3) with a touch-sensitive surface 451 (e.g., a tabletor touchpad 355, FIG. 3) that is separate from the display 450. Device300 also, optionally, includes one or more contact intensity sensors(e.g., one or more of sensors 357) for detecting intensity of contactson touch-sensitive surface 451 and/or one or more tactile outputgenerators 359 for generating tactile outputs for a user of device 300.

FIG. 4B illustrates an exemplary user interface on a device (e.g.,device 300, FIG. 3) with a touch-sensitive surface 451 (e.g., a tabletor touchpad 355, FIG. 3) that is separate from the display 450. Althoughmany of the examples that follow will be given with reference to inputson touch screen display 112 (where the touch sensitive surface and thedisplay are combined), in some embodiments, the device detects inputs ona touch-sensitive surface that is separate from the display, as shown inFIG. 4B. In some embodiments, the touch-sensitive surface (e.g., 451 inFIG. 4B) has a primary axis (e.g., 452 in FIG. 4B) that corresponds to aprimary axis (e.g., 453 in FIG. 4B) on the display (e.g., 450). Inaccordance with these embodiments, the device detects contacts (e.g.,460 and 462 in FIG. 4B) with the touch-sensitive surface 451 atlocations that correspond to respective locations on the display (e.g.,in FIG. 4B, 460 corresponds to 468 and 462 corresponds to 470). In thisway, user inputs (e.g., contacts 460 and 462, and movements thereof)detected by the device on the touch-sensitive surface (e.g., 451 in FIG.4B) are used by the device to manipulate the user interface on thedisplay (e.g., 450 in FIG. 4B) of the multifunction device when thetouch-sensitive surface is separate from the display. It should beunderstood that similar methods are, optionally, used for other userinterfaces described herein.

Additionally, while the following examples are given primarily withreference to finger inputs (e.g., finger contacts, finger tap gestures,finger swipe gestures, etc.), it should be understood that, in someembodiments, one or more of the finger inputs are replaced with inputfrom another input device (e.g., a mouse based input or a stylus input).For example, a swipe gesture is, optionally, replaced with a mouse click(e.g., instead of a contact) followed by movement of the cursor alongthe path of the swipe (e.g., instead of movement of the contact). Asanother example, a tap gesture is, optionally, replaced with a mouseclick while the cursor is located over the location of the tap gesture(e.g., instead of detection of the contact followed by ceasing to detectthe contact). Similarly, when multiple user inputs are simultaneouslydetected, it should be understood that multiple computer mice are,optionally, used simultaneously, or a mouse and finger contacts are,optionally, used simultaneously.

As used herein, the term “focus selector” refers to an input elementthat indicates a current part of a user interface with which a user isinteracting. In some implementations that include a cursor or otherlocation marker, the cursor acts as a “focus selector,” so that when aninput (e.g., a press input) is detected on a touch-sensitive surface(e.g., touchpad 355 in FIG. 3 or touch-sensitive surface 451 in FIG. 4B)while the cursor is over a particular user interface element (e.g., abutton, window, slider or other user interface element), the particularuser interface element is adjusted in accordance with the detectedinput. In some implementations that include a touch-screen display(e.g., touch-sensitive display system 112 in FIG. 1A or the touch screenin FIG. 4A) that enables direct interaction with user interface elementson the touch-screen display, a detected contact on the touch-screen actsas a “focus selector,” so that when an input (e.g., a press input by thecontact) is detected on the touch-screen display at a location of aparticular user interface element (e.g., a button, window, slider orother user interface element), the particular user interface element isadjusted in accordance with the detected input. In some implementations,focus is moved from one region of a user interface to another region ofthe user interface without corresponding movement of a cursor ormovement of a contact on a touch-screen display (e.g., by using a tabkey or arrow keys to move focus from one button to another button); inthese implementations, the focus selector moves in accordance withmovement of focus between different regions of the user interface.Without regard to the specific form taken by the focus selector, thefocus selector is generally the user interface element (or contact on atouch-screen display) that is controlled by the user so as tocommunicate the user's intended interaction with the user interface(e.g., by indicating, to the device, the element of the user interfacewith which the user is intending to interact). For example, the locationof a focus selector (e.g., a cursor, a contact, or a selection box) overa respective button while a press input is detected on thetouch-sensitive surface (e.g., a touchpad or touch screen) will indicatethat the user is intending to activate the respective button (as opposedto other user interface elements shown on a display of the device).

As used in the specification and claims, the term “intensity” of acontact on a touch-sensitive surface refers to the force or pressure(force per unit area) of a contact (e.g., a finger contact or a styluscontact) on the touch-sensitive surface, or to a substitute (proxy) forthe force or pressure of a contact on the touch-sensitive surface. Theintensity of a contact has a range of values that includes at least fourdistinct values and more typically includes hundreds of distinct values(e.g., at least 256). Intensity of a contact is, optionally, determined(or measured) using various approaches and various sensors orcombinations of sensors. For example, one or more force sensorsunderneath or adjacent to the touch-sensitive surface are, optionally,used to measure force at various points on the touch-sensitive surface.In some implementations, force measurements from multiple force sensorsare combined (e.g., a weighted average or a sum) to determine anestimated force of a contact. Similarly, a pressure-sensitive tip of astylus is, optionally, used to determine a pressure of the stylus on thetouch-sensitive surface. Alternatively, the size of the contact areadetected on the touch-sensitive surface and/or changes thereto, thecapacitance of the touch-sensitive surface proximate to the contactand/or changes thereto, and/or the resistance of the touch-sensitivesurface proximate to the contact and/or changes thereto are, optionally,used as a substitute for the force or pressure of the contact on thetouch-sensitive surface. In some implementations, the substitutemeasurements for contact force or pressure are used directly todetermine whether an intensity threshold has been exceeded (e.g., theintensity threshold is described in units corresponding to thesubstitute measurements). In some implementations, the substitutemeasurements for contact force or pressure are converted to an estimatedforce or pressure and the estimated force or pressure is used todetermine whether an intensity threshold has been exceeded (e.g., theintensity threshold is a pressure threshold measured in units ofpressure). Using the intensity of a contact as an attribute of a userinput allows for user access to additional device functionality that mayotherwise not be readily accessible by the user on a reduced-size devicewith limited real estate for displaying affordances (e.g., on atouch-sensitive display) and/or receiving user input (e.g., via atouch-sensitive display, a touch-sensitive surface, or aphysical/mechanical control such as a knob or a button).

In some embodiments, contact/motion module 130 uses a set of one or moreintensity thresholds to determine whether an operation has beenperformed by a user (e.g., to determine whether a user has “clicked” onan icon). In some embodiments, at least a subset of the intensitythresholds are determined in accordance with software parameters (e.g.,the intensity thresholds are not determined by the activation intensitythresholds of particular physical actuators and can be adjusted withoutchanging the physical hardware of device 100). For example, a mouse“click” threshold of a trackpad or touch-screen display can be set toany of a large range of predefined thresholds values without changingthe trackpad or touch-screen display hardware. Additionally, in someembodiments, a user of the device is provided with software settings foradjusting one or more of the set of intensity thresholds (e.g., byadjusting individual intensity thresholds and/or by adjusting aplurality of intensity thresholds at once with a system-level click“intensity” parameter).

As used in the specification and claims, the term “characteristicintensity” of a contact refers to a characteristic of the contact basedon one or more intensities of the contact. In some embodiments, thecharacteristic intensity is based on multiple intensity samples. Thecharacteristic intensity is, optionally, based on a predefined number ofintensity samples, or a set of intensity samples collected during apredetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10seconds) relative to a predefined event (e.g., after detecting thecontact, prior to detecting liftoff of the contact, before or afterdetecting a start of movement of the contact, prior to detecting an endof the contact, before or after detecting an increase in intensity ofthe contact, and/or before or after detecting a decrease in intensity ofthe contact). A characteristic intensity of a contact is, optionallybased on one or more of: a maximum value of the intensities of thecontact, a mean value of the intensities of the contact, an averagevalue of the intensities of the contact, a top 10 percentile value ofthe intensities of the contact, a value at the half maximum of theintensities of the contact, a value at the 90 percent maximum of theintensities of the contact, or the like. In some embodiments, theduration of the contact is used in determining the characteristicintensity (e.g., when the characteristic intensity is an average of theintensity of the contact over time). In some embodiments, thecharacteristic intensity is compared to a set of one or more intensitythresholds to determine whether an operation has been performed by auser. For example, the set of one or more intensity thresholds mayinclude a first intensity threshold and a second intensity threshold. Inthis example, a contact with a characteristic intensity that does notexceed the first threshold results in a first operation, a contact witha characteristic intensity that exceeds the first intensity thresholdand does not exceed the second intensity threshold results in a secondoperation, and a contact with a characteristic intensity that exceedsthe second intensity threshold results in a third operation. In someembodiments, a comparison between the characteristic intensity and oneor more intensity thresholds is used to determine whether or not toperform one or more operations (e.g., whether to perform a respectiveoption or forgo performing the respective operation) rather than beingused to determine whether to perform a first operation or a secondoperation.

In some embodiments, a portion of a gesture is identified for purposesof determining a characteristic intensity. For example, atouch-sensitive surface may receive a continuous swipe contacttransitioning from a start location and reaching an end location (e.g.,a drag gesture), at which point the intensity of the contact increases.In this example, the characteristic intensity of the contact at the endlocation may be based on only a portion of the continuous swipe contact,and not the entire swipe contact (e.g., only the portion of the swipecontact at the end location). In some embodiments, a smoothing algorithmmay be applied to the intensities of the swipe contact prior todetermining the characteristic intensity of the contact. For example,the smoothing algorithm optionally includes one or more of: anunweighted sliding-average smoothing algorithm, a triangular smoothingalgorithm, a median filter smoothing algorithm, and/or an exponentialsmoothing algorithm. In some circumstances, these smoothing algorithmseliminate narrow spikes or dips in the intensities of the swipe contactfor purposes of determining a characteristic intensity.

The control heuristics figures (e.g., FIGS. 6A-6K) described belowinclude various intensity diagrams that show the current intensity ofthe contact on the touch-sensitive surface relative to one or moreintensity thresholds (e.g., a light press activation intensity thresholdI_(LA), respective activation intensity threshold IT_(speedA) associatedwith various playback speeds, a light press release intensity thresholdI_(LR) and/or respective release intensity thresholds associated withvarious playback speeds). In some embodiments, the light pressactivation intensity threshold corresponds to an intensity at which thedevice will perform operations typically associated with clicking abutton of a physical mouse or a trackpad. In some embodiments, thehigher activation intensity thresholds correspond to intensities atwhich the device will perform operations that are different fromoperations typically associated with clicking a button of a physicalmouse or a trackpad. In some embodiments, when a contact is detectedwith a characteristic intensity below the light press intensitythreshold (e.g., and above a nominal contact-detection intensitythreshold below which the contact is no longer detected), the devicewill move a focus selector in accordance with movement of the contact onthe touch-sensitive surface without performing an operation associatedwith the light press activation intensity threshold or the higheractivation intensity thresholds. Generally, unless otherwise stated,these intensity thresholds are consistent between different sets of userinterface figures.

In some embodiments, the response of the device to inputs detected bythe device depends on criteria based on the contact intensity during theinput. For example, for some “light press” inputs, the intensity of acontact exceeding a first intensity threshold during the input triggersa first response. In some embodiments, the response of the device toinputs detected by the device depends on criteria that include both thecontact intensity during the input and time-based criteria. For example,for some “deep press” inputs (e.g., press inputs with intensitiesreaching above one or more of the higher activation intensitythresholds), the intensity of a contact exceeding a second intensitythreshold during the input, greater than the first intensity thresholdfor a light press, triggers a second response only if a delay time haselapsed between meeting the first intensity threshold and meeting thesecond intensity threshold. This delay time is typically less than 200ms in duration (e.g., 40, 100, or 120 ms, depending on the magnitude ofthe second intensity threshold, with the delay time increasing as thesecond intensity threshold increases). This delay time helps to avoidaccidental deep press inputs. As another example, for some “deep press”inputs, there is a reduced-sensitivity time period that occurs after thetime at which the first intensity threshold is met. During thereduced-sensitivity time period, the second intensity threshold isincreased. This temporary increase in the second intensity thresholdalso helps to avoid accidental deep press inputs. For other deep pressinputs, the response to detection of a deep press input does not dependon time-based criteria.

In some embodiments, one or more of the input intensity thresholdsand/or the corresponding outputs vary based on one or more factors, suchas user settings, contact motion, input timing, application running,rate at which the intensity is applied, number of concurrent inputs,user history, environmental factors (e.g., ambient noise), focusselector position, and the like. Exemplary factors are described in U.S.patent application Ser. Nos. 14/399,606 and 14/624,296, which areincorporated by reference herein in their entireties.

For example, FIG. 4C illustrates a dynamic intensity threshold 480 thatchanges over time based in part on the intensity of touch input 476 overtime. Dynamic intensity threshold 480 is a sum of two components, firstcomponent 474 that decays over time after a predefined delay time p1from when touch input 476 is initially detected, and second component478 that trails the intensity of touch input 476 over time. The initialhigh intensity threshold of first component 474 reduces accidentaltriggering of a “deep press” response, while still allowing an immediate“deep press” response if touch input 476 provides sufficient intensity.Second component 478 reduces unintentional triggering of a “deep press”response by gradual intensity fluctuations of a touch input. In someembodiments, when touch input 476 satisfies dynamic intensity threshold480 (e.g., at point 481 in FIG. 4C), the “deep press” response istriggered.

FIG. 4D illustrates another dynamic intensity threshold 486 (e.g.,intensity threshold I_(D)). FIG. 4D also illustrates two other intensitythresholds: a first intensity threshold I_(H) and a second intensitythreshold I_(L). In FIG. 4D, although touch input 484 satisfies thefirst intensity threshold I_(H) and the second intensity threshold I_(L)prior to time p2, no response is provided until delay time p2 haselapsed at time 482. Also in FIG. 4D, dynamic intensity threshold 486decays over time, with the decay starting at time 488 after a predefineddelay time p1 has elapsed from time 482 (when the response associatedwith the second intensity threshold I_(L) was triggered). This type ofdynamic intensity threshold reduces accidental triggering of a responseassociated with the dynamic intensity threshold I_(D) immediately after,or concurrently with, triggering a response associated with a lowerintensity threshold, such as the first intensity threshold I_(H) or thesecond intensity threshold I_(L).

FIG. 4E illustrate yet another dynamic intensity threshold 492 (e.g.,intensity threshold I_(D)). In FIG. 4E, a response associated with theintensity threshold I_(L) is triggered after the delay time p2 haselapsed from when touch input 490 is initially detected. Concurrently,dynamic intensity threshold 492 decays after the predefined delay timep1 has elapsed from when touch input 490 is initially detected. So adecrease in intensity of touch input 490 after triggering the responseassociated with the intensity threshold IL, followed by an increase inthe intensity of touch input 490, without releasing touch input 490, cantrigger a response associated with the intensity threshold I_(D) (e.g.,at time 494) even when the intensity of touch input 490 is below anotherintensity threshold, for example, the intensity threshold I_(L).

An increase of characteristic intensity of the contact from an intensitybelow the light press activation intensity threshold IT_(LA) to anintensity between the light press activation intensity threshold IT_(LA)and the next higher activation intensity threshold is sometimes referredto as a “light press” input. An increase of characteristic intensity ofthe contact from an intensity below a higher activation intensitythreshold to an intensity above the higher activation intensitythreshold is sometimes referred to as a “deep press” input. An increaseof characteristic intensity of the contact from an intensity below thecontact-detection intensity threshold to an intensity between thecontact-detection intensity threshold and the light press activationintensity threshold IT_(LA) is sometimes referred to as detecting thecontact on the touch-surface. A decrease of characteristic intensity ofthe contact from an intensity above the contact-detection intensitythreshold to an intensity below the contact-detection intensitythreshold is sometimes referred to as detecting liftoff of the contactfrom the touch-surface. In some embodiments, the contact-detectionintensity is zero. In some embodiments, the contact-detection intensityis greater than zero. In some illustrations a shaded circle or oval isused to represent intensity of a contact on the touch-sensitive surface(e.g., as in shown by contact 512, FIGS. 5C-5E). In some illustrations,a circle or oval without shading is used represent a respective contacton the touch-sensitive surface without specifying the intensity of therespective contact.

In some embodiments, described herein, one or more operations areperformed in response to detecting a gesture that includes a respectivepress input or in response to detecting the respective press inputperformed with a respective contact (or a plurality of contacts), wherethe respective press input is detected based at least in part ondetecting an increase in intensity of the contact (or plurality ofcontacts) above a press-input intensity threshold. In some embodiments,the respective operation is performed in response to detecting theincrease in intensity of the respective contact above the press-inputintensity threshold (e.g., the respective operation is performed on a“down stroke” of the respective press input). In some embodiments, thepress input includes an increase in intensity of the respective contactabove the press-input intensity threshold and a subsequent decrease inintensity of the contact below the press-input intensity threshold, andthe respective operation is performed in response to detecting thesubsequent decrease in intensity of the respective contact below thepress-input threshold (e.g., the respective operation is performed on an“up stroke” of the respective press input).

In some embodiments, the device employs intensity hysteresis to avoidaccidental inputs sometimes termed “jitter,” where the device defines orselects a hysteresis intensity threshold with a predefined relationshipto the press-input intensity threshold (e.g., the hysteresis intensitythreshold is X intensity units lower than the press-input intensitythreshold or the hysteresis intensity threshold is 75%, 90%, or somereasonable proportion of the press-input intensity threshold). Thus, insome embodiments, the press input includes an increase in intensity ofthe respective contact above the press-input intensity threshold and asubsequent decrease in intensity of the contact below the hysteresisintensity threshold that corresponds to the press-input intensitythreshold, and the respective operation is performed in response todetecting the subsequent decrease in intensity of the respective contactbelow the hysteresis intensity threshold (e.g., the respective operationis performed on an “up stroke” of the respective press input).Similarly, in some embodiments, the press input is detected only whenthe device detects an increase in intensity of the contact from anintensity at or below the hysteresis intensity threshold to an intensityat or above the press-input intensity threshold and, optionally, asubsequent decrease in intensity of the contact to an intensity at orbelow the hysteresis intensity, and the respective operation isperformed in response to detecting the press input (e.g., the increasein intensity of the contact or the decrease in intensity of the contact,depending on the circumstances).

For ease of explanation, the description of operations performed inresponse to a press input associated with a press-input intensitythreshold or in response to a gesture including the press input are,optionally, triggered in response to detecting: an increase in intensityof a contact above the press-input intensity threshold, an increase inintensity of a contact from an intensity below the hysteresis intensitythreshold to an intensity above the press-input intensity threshold, adecrease in intensity of the contact below the press-input intensitythreshold, or a decrease in intensity of the contact below thehysteresis intensity threshold corresponding to the press-inputintensity threshold. Additionally, in examples where an operation isdescribed as being performed in response to detecting a decrease inintensity of a contact below the press-input intensity threshold, theoperation is, optionally, performed in response to detecting a decreasein intensity of the contact below a hysteresis intensity thresholdcorresponding to, and lower than, the press-input intensity threshold.As described above, in some embodiments, the triggering of theseresponses also depends on time-based criteria being met (e.g., a delaytime has elapsed between a first intensity threshold being met and asecond intensity threshold being met).

User Interfaces and Associated Processes

Attention is now directed towards embodiments of user interfaces (“UI”)and associated processes that may be implemented on an electronicdevice, such as portable multifunction device 100 or device 300, with adisplay, a touch-sensitive surface, and one or more sensors to detectintensity of contacts with the touch-sensitive surface.

FIGS. 5A-5F illustrate exemplary user interfaces for controlling mediapresentation in accordance with some embodiments. FIGS. 6A-6K illustrateexemplary control heuristics for controlling media presentation inaccordance with some embodiments. The user interfaces and controlheuristics in these figures are used to illustrate the processesdescribed below, including the processes in FIGS. 7A-7H and 8A-8C.Although some of the examples which follow will be given with referenceto inputs on a touch-screen display (where the touch-sensitive surfaceand the display are combined), in some embodiments, the device detectsinputs on a touch-sensitive surface 451 that is separate from thedisplay 450, as shown in FIG. 4B.

FIG. 5A illustrates exemplary user interface 400 of an electronic device(e.g., device 300, FIG. 3, or portable multifunction device 100, FIG.1A) when a media player application (e.g., video and music player modulerepresented by icon 422, FIG. 4A) is executed on the electronic device.The media player application provides a media playback function topresent media content (e.g., a collection of images, animation, video,music, speech, etc.) continuously at a selected playback speed (e.g.,0×, 1×, 2×, 5×, 10×, 20×, 30×, 60×, etc.). Examples of the media playerapplication includes a music player application, a video playerapplication, a presentation application that displays a slideshow, amulti-media editor application, an audio recorder application, a photoeditor application that displays photos in a slideshow, and the like.User Interface 400 includes content window 502 and various userinterface controls for controlling different aspects of mediapresentation in the media player application. In some embodiments,content window 502 includes play button 504, and optionally a stillimage (e.g., an album cover image or representative video frame) or text(e.g., a title of media content) associated with a currently selectedmedia file (e.g., a video clip titled “Life in the Desert”).

In some embodiments, user interface 400 further includes scrubber 506which displays the total duration of the currently selected mediacontent, and indicates (e.g., using indicator 508) the current playbackprogress of the selected media content. In some embodiments, a user candrag indicator 508 forward or backward along scrubber 506 to quicklyjump to different locations in the selected media content.

In some embodiments, user interface 400 further includes a number ofplayback controls, including play control 510, fast forward control 512,and rewind control 514. Play control 510 is used to start normalplayback (e.g., at 1× speed) of the media content. Fast forward control512 is used to start fast forwarding of the media content, e.g., byplaying the media content at a speed higher than the normal playbackspeed. Rewind control 512 is used start rewinding of the media content,e.g., by playing the media content backward at a speed higher than thenormal playback speed. In some embodiments, as described later in thepresent disclosure, one or more of playback controls 510, 512 and 514are used to increase the current playback speed to one or more higherlevels. The higher playback speed may be momentary and lasts only for auser-specified duration (e.g., while the intensity of the press inputmeets certain criteria). Alternatively, the higher playback speeds maybe maintained until a new input on one of the playback controls isreceived.

FIG. 5B illustrates that normal playback (e.g., at 1× speed) of thecurrently selected media content has been started, e.g., in response toa tap or light press input detected on play button 504 or play control510. While the normal playback of the media content is ongoing, thecurrent progress of the playback is indicated by indicator 508 onscrubber 506. In some embodiments, playback control 510 is replaced withpause control 518. In some embodiments, a stop control (not shown) maybe included in user interface 400 for stopping the playback at any speedand return the start position of the selected media content to thebeginning of the selected media content. For example, in someembodiments, a stop control may be presented next to playback controls514, 518, or 512 after the media player has started playing the mediacontent.

FIG. 5C illustrates that when a press input (e.g., represented bycontact 520) is detected on fast forward control 512 while the mediacontent is being presented at a normal playback speed (e.g., 1× speed),and the intensity of the contact reaches above a predeterminedactivation intensity threshold (e.g., the activation intensity thresholdfor a light press input I_(LA) or the activation intensity thresholdassociated with 2× speed), fast forward control 512 is optionallyhighlighted to indicate the activation of the fast forward function. Insome embodiments, upon activation of the fast forward function, thespeed by which the selected media content is presented in content window502 is increased from the normal playback speed (e.g., 1× speed) to afirst predetermined higher value (e.g., a first fast forward speed oftwo times the normal playback speed, or, 2× speed). In some embodiments,a playback speed indicator (e.g., speed indicator 522) is presented inuser interface 400 to indicate the current playback speed (e.g., 2×). Insome embodiments, tactile feedback (e.g., a tactile feedback that causesa click sensation in the user's finger in contact with fast forwardcontrol 512) is provided on touch screen 112 at the activation of thefast forward function.

FIG. 5D illustrates that when the intensity of the same press input(e.g., the press input represented by contact 520 in FIG. 5C) increasesfrom the predetermined activation intensity threshold for 2× speed to avalue above the next higher activation intensity threshold (e.g., theactivation intensity threshold for 5× speed), the speed of the mediaplayback is increased from the first fast forward speed (e.g., 2× speed)to a second, higher fast forward speed (e.g., 5× speed). In someembodiments, the higher fast forward speed (e.g., 5× speed) is indicatedby speed indicator 522 in content window 502. In some embodiments, whenthe contact intensity reaches the second, higher activation intensitythreshold (e.g., the activation intensity threshold for 5× speed), fastforward control 512 is highlighted (e.g., in a different manner from thehighlighting shown in FIG. 5C) to indicate the activation of the second,higher fast forward speed. In some embodiments, tactile feedback (e.g.,a tactile feedback that causes a click sensation in the user's finger incontact with fast forward control 512) is provided on touch screen 112at the activation of the second, higher fast forward speed (e.g., 5×speed).

FIG. 5E illustrates that when the intensity of the same press input(e.g., the press input represented by contact 520 in FIGS. 5C and 5D)increases from the predetermined activation intensity threshold for 5×speed to above the next higher activation intensity threshold (e.g., theactivation intensity threshold for 10× speed), the speed of the mediaplayback is increased from the second fast forward speed (e.g., 5×speed) to a third, higher fast forward speed (e.g., 10× speed). In someembodiments, the higher fast forward speed (e.g., 10×) is indicated byspeed indicator 522 in content window 502. In some embodiments, when thecontact intensity reaches the next higher activation intensity threshold(e.g., the activation intensity threshold for 10× speed), fast forwardcontrol 512 is highlighted (e.g., in a different manner from thehighlighting shown in FIGS. 5C and 5D) to indicate the activation of thehigher fast forward speed (e.g., 10× speed). In some embodiments,tactile feedback (e.g., a tactile feedback that causes a click sensationin the user's finger in contact with fast forward control 512) isprovided on touch screen 112 at the activation of the higher fastforward speed (e.g., 10× speed).

FIG. 5F illustrates that the press input (e.g., the press inputrepresented by contact 520 in FIGS. 5C-5E) has been terminated (e.g.,intensity of contact 520 has dropped below a predetermined releaseintensity threshold for a tap or light press input and/or becomeundetectable). Upon detection that the termination of press input, theplayback speed of the media content is returned back to the normalplayback speed (e.g., 1× speed). In some embodiments, when the playbackspeed is first returned to the normal playback speed, speed indicator522 displays the playback speed (e.g., 1×). In some embodiments, afterthe playback speed has remained at the normal playback speed for apredetermined duration (e.g., 3 seconds), speed indicator 522 isoptionally removed from content window 502. As shown in FIG. 5F, fastforward control 512 is returned to its normal un-highlighted appearanceafter the press input has been terminated.

In some embodiments, although not shown in FIGS. 5E and 5F, when theintensity of the press input drops gradually from a level above theactivation intensity threshold for 10× speed to a level below therelease intensity threshold for 2× speed, the intensity of contact 520crosses respective release intensity thresholds for fast forward speed10×, fast forward speed 5×, and fast forward speed 2×, one by one. Insome embodiments, as the intensity of the contact crosses the respectiverelease intensity thresholds of each of the fast forward speeds, theplayback speed is dropped from a current fast forward speed to the nextlower speed. Correspondingly, the highlighting of fast forward control512 and the speed shown by speed indicator 522 are changed to thoseshown in FIGS. 5E, 5D, and 5C according to the current playback speed ofthe media content. In some embodiments, tactile feedback is provided ateach instant that the respective release intensity threshold for thecurrent fast forward speed is crossed.

The user interfaces illustrated in FIGS. 5A-5F are merely one example ofhow playback speed may be changed in response to a press input detectedon a playback control. For example, in some embodiments, instead of asustained press input, multiple press inputs or tap inputs may be usedto raise the playback speed to different fast forward levels. In someembodiments, instead of returning the current playback speed to thenormal playback speed or zero (0×) after a release intensity thresholdfor the lowest fast forward speed is crossed, the highest fast forwardspeed reached by a current press input can be locked in and maintaineduntil a separate speed-restoring input is received (e.g., when a tapinput is detected on pause control 518 or fast forward control 512). Insome embodiments, whether to lock in a speed depends on the intensityprofile of the press input relative to a predetermined lock timethreshold (or time delay). In some embodiments, instead of increasingthe playback speed in the forward direction in response to a press inputdetected on fast forward control 512, the rewind speed may be increasedin a similar manner in response to a press input detected on rewindcontrol 514.

FIGS. 6A-6K illustrate exemplary control heuristics for controllingmedia presentation in accordance with some embodiments. The controlheuristics illustrated in these figures may be used in the processesdescribed below, including the processes in FIGS. 7A-7H and 8A-8C. Theinputs referenced in the description of the control heuristics may beinputs on a touch-screen display (where the touch-sensitive surface andthe display are combined), or in some embodiments, inputs on atouch-sensitive surface 451 that is separate from the display 450, asshown in FIG. 4B.

FIGS. 6A and 6B illustrate how a lock time threshold T_(L) is used todetermine whether a light press input that triggers activation of afirst fast forward speed (e.g., 2×) will cause the fast forward speed tobe locked in after the light press input is terminated. In FIGS. 6A and6B, the initial playback speed at the time that the press input isreceived is zero (0×). In other words, the media content is in a pausedor stopped state when the light press input is first detected (e.g.,with a finger-down event triggered by the initial contact of a finger onthe touch screen). The lock time threshold T_(L) may be any suitablelength (e.g., 50 ms, 100 ms, 200 ms, 300 ms, 500 ms, 700 ms, or 1000ms), and is optionally predefined in accordance with user preference orheuristics.

FIG. 6A illustrates an exemplary scenario where the intensity of thepress input increases above the activation intensity threshold I_(2×A)(e.g., I_(2×A)=the activation intensity threshold I_(LA) for a “lightpress” input) of the first fast forward speed (e.g., 2×), and then fallsbelow the release intensity threshold I_(2×R) (e.g., I_(2×R)=the releaseintensity threshold I_(LR) for a “light press” input) of the first fastforward speed (e.g., 2×) before the lock time threshold T_(L) expires.The intensity of the press input never reaches the activation intensitythreshold of the next higher playback speed (e.g., I_(5×A)). As aresult, the speed of playback is increased from zero (0×) to the firstfast forward speed (e.g., 2×) upon crossing of the activation intensitythreshold I_(2×A) and remains at the first fast forward speed (e.g., 2×)after the intensity of the press input drops below the release intensitythreshold I_(2×R) for the first fast forward speed (e.g., 2×) and thepress input is finally terminated (e.g., when the intensity drops belowthe contact-detection intensity or becomes undetectable).

FIG. 6B illustrates an exemplary scenario where, instead of fallingbelow the release intensity threshold I_(2×R) before the lock timethreshold T_(L) is reached, the intensity of the press input stayedabove the release intensity threshold I_(2×R) until the lock timethreshold T_(L) has expired. The intensity of the press input then fallsbelow the release intensity threshold I_(2×R) of the first fast forwardspeed (e.g., 2×) before the press input is terminated. The intensity ofthe press input never reached the activation intensity of the nexthigher playback speed. As a result, the speed of playback is increasedfrom zero (0×) to the first fast forward speed (e.g., 2×) upon crossingof the activation intensity threshold I_(2×A) and remains at the firstfast forward speed (e.g., 2×) until the intensity of the press inputdrops below the release intensity threshold I_(2×R) for the first fastforward speed (e.g., 2×). In response to the intensity of the pressinput dropping below the release intensity threshold I_(2×R) for thefirst fast forward speed (e.g., 2×), the playback speed is decreasedfrom the first fast forward speed (e.g., 2×) to zero. The media playeris returned from a fast forward state to the paused state. In someembodiments, as the contact intensity falls below the correspondingrelease intensity threshold for the higher playback speed, the reductionof the playback speed to zero may be gradual (e.g., in accordance withthe rate of reduction of the contact intensity).

Although the above description of FIGS. 6A and 6B uses fast forwardingas an example. The same control heuristic can be used for rewinding. Forexample, in response to a light press input detected on a rewind control(e.g., rewind control 514) while the media player is in a paused orstopped state, the rewind speed is increased from zero to a first rewindspeed (e.g., 2×) in the backward direction when the intensity of thepress input reaches above the activation intensity threshold associatedwith the first rewind speed (e.g., 2×). Depending on the intensityprofile of the press input relative to the lock time threshold T_(L),the rewind speed may be locked in at the first rewind speed (e.g., 2×),or returned to zero when the intensity of the press input drops belowthe release intensity associated with the first rewind speed (e.g., 2×).

In some embodiments, the respective activation intensity threshold andrelease intensity threshold associated with the first fast forward speed(e.g., 2×) are the same. In some embodiments, the respective activationintensity threshold and release intensity threshold associated with thefirst fast forward speed (e.g., 2×) are different, with the activationintensity threshold being greater than the release intensity threshold.In some embodiments, the activation intensity threshold and releaseintensity threshold associated with the first higher speed level (e.g.,fast forward speed of 2× and rewind speed of 2×) are the same as theactivation intensity threshold and release intensity threshold for a tapinput that activates the play button (e.g., play control 510) of themedia player.

FIG. 6A above illustrates how to lock into a next higher playback speedwith a light press input while the media player is in a stopped orpaused state. FIGS. 6B-6D illustrate control heuristics in which higherplayback speeds (e.g., different levels of fast forward or rewindspeeds) are not locked in at the end of the press input (e.g., a pressinput with an intensity reaching above one or more higher activationintensity thresholds (e.g., the activation intensity thresholdsassociated with 2×, 5×, and 10× speeds). Instead, the playback speed isgradually stepped up in discrete levels and then stepped down to apredetermined level (e.g., 0×).

FIG. 6C illustrates that, when the media player is at a paused orstopped state (with a playback speed of 0×), a deep press input with anintensity reaching above the respective activation intensity thresholdsassociated with two consecutive fast forward speeds (e.g., I_(2×A)associated with fast forward speed 2×, and I_(5×A) associated with fastforward speed 5×) is detected. In response to the rising intensity ofthe deep press input, the playback speed is stepped up from zero (0×) tothe first fast forward speed (e.g., 2×) upon the intensity crossing theactivation intensity threshold (e.g., I_(2×A)) associated with the firstfast forward speed (e.g., 2×). Then, as the intensity of the deep pressinput continues to increase and crosses the activation intensitythreshold (e.g., I_(5×A)) associated with the next higher fast forwardspeed (e.g., 5×), the playback speed is stepped up from the first fastforward speed (e.g., 2×) to the next higher fast forward speed (e.g.,5×). When the intensity of the deep press input then decreases andcrosses the release intensity threshold (e.g., I_(5×R)) associated withthe highest achieved fast forward speed (e.g., 5×), the playback speedis stepped down from the highest achieved fast forward speed (e.g., 5×)to the next lower fast forward speed (e.g., 2×). When the intensity ofthe deep press input further decreases and crosses the release intensitythreshold (e.g., I_(2>R)=I_(LR)) associated with the next lower fastforward speed (e.g., 2×), the media player is returned to the pausedstate with a playback speed of zero (0×).

FIG. 6D is similar to FIG. 6C, where the media player is in a stopped orpaused state when a deep press input is detected. The intensity of thedeep press input reaches above the respective activation intensitythresholds associated with three fast forward speeds (e.g., I_(2×A)associated with fast forward speed 2×, I_(5×A) associated with fastforward speed 5×, and I_(10×A) associated with fast forward speed 10×).In response to the rising intensity of the deep press input, theplayback speed is stepped up from zero to the initial fast forward speedof 2× upon the intensity crossing the activation intensity thresholdI_(2×A), then from the initial fast forward speed of 2× to the nexthigher fast forward speed of 5× upon the intensity crossing theactivation intensity threshold I_(5×A), and then from the fast forwardspeed of 5× to the next higher fast forward speed of 10× upon theintensity crossing the activation intensity threshold I_(10×A). When theintensity of the deep press input has peaked and started to decrease,the playback speed is stepped down from the highest achieved fastforward speed of 10× to the next lower fast forward speed of 5× upon theintensity crossing the release intensity threshold I_(10×R) associatedwith the fast forward speed of 10×. When the intensity of the deep pressinput decreases further and crosses the release intensity thresholdI_(5×R) associated with the fast forward speed of 5×, the playback speedis stepped down from the fast forward speed of 5× to the next lower fastforward speed of 2×. When the intensity of the press input decreasesfurther and crosses the release intensity threshold I_(2×R) (e.g.,I_(2×R)=I_(LR)) associated with the fast forward speed of 2×, the mediaplayer is returned to the paused state with a playback speed of zero.

Although the above description of FIGS. 6C and 6D uses fast forwardingas an example. The same control heuristic can be used for rewinding. Forexample, in response to a deep press input detected on a rewind control(e.g., rewind control 514) while the media player is in a paused orstopped state, the rewind speed is stepped up from zero to two or morehigher rewind speeds (e.g., 2×, 5×, and 10×) in the backward directionwhen the intensity of the deep press input reaches above the activationintensity threshold associated each of those higher rewind speeds. Onthe down-stroke of the deep press input, the rewind speed is steppeddown from the highest achieved rewind speed to each of the lower rewindspeeds, and finally to zero, when the intensity of the deep press inputreaches below the release intensity threshold associated with each ofthe previously achieved rewind speeds.

FIGS. 6E and 6F illustrate how a lock time threshold T_(L) (e.g., thesame T_(L) value or a different T_(L) value from the T_(L) value inFIGS. 6A and 6B) is used to determine whether a light press input thattriggers activation of a first fast forward speed (e.g., 2×) will causethe fast forward speed to be locked in after the light press input isterminated. In FIGS. 6E and 6F, the initial playback speed at the timethat the light press input is received is the normal playback speed(e.g., 1×). In other words, the media content is in a normal playbackstate when the light press input is first detected (e.g., with afinger-down event triggered by the initial contact of a finger on thetouch screen). The lock time threshold T_(L) may be any suitable length(e.g., 50 ms, 100 ms, 200 ms, 300 ms, 500 ms, 700 ms, or 1000 ms), andis optionally predefined in accordance with user preference orheuristics.

FIG. 6E illustrates an exemplary scenario where the intensity of thedeep press input increases above the activation intensity thresholdI_(2×A) (e.g., I_(2×A)=the activation intensity threshold I_(LA)-for a“light press” input) of a first fast forward speed (e.g., 2×), and thenfalls below the release intensity threshold I_(2×R) (e.g., I_(2×R)=theactivation intensity threshold I_(LR)-for a “light press” input) of thefirst fast forward speed (e.g., 2×) before the lock time threshold T_(L)expires. The intensity of the light press never reaches the next higheractivation intensity threshold (e.g., I_(5×A)). As a result, the speedof playback is increased from the normal playback speed (e.g., 1×) tothe first fast forward speed (e.g., 2×) upon crossing of the activationintensity threshold I_(2×A) and remains at the first fast forward speed(e.g., 2×) after the intensity of the light press input has droppedbelow the release intensity threshold I_(2×R) for the first fast forwardspeed (e.g., 2×) and the press input is finally terminated (e.g., whenthe intensity drops below the contact-detection intensity or becomesundetectable).

FIG. 6F illustrates an exemplary scenario where, instead of fallingbelow the release intensity threshold I_(2×R) before the lock timethreshold T_(L) is reached, the intensity of the light press inputstayed above the release intensity threshold I_(2×R) until the lock timethreshold T_(L) has expired. The intensity of the press input then fallsbelow the release intensity threshold I_(2×R) of the first fast forwardspeed (e.g., 2×) before the press input is terminated. The intensity ofthe light press input never reached the next higher activation intensitythreshold (e.g., I_(5×A)). As a result, the speed of playback isincreased from the normal playback speed (e.g., 1×) to the first fastforward speed (e.g., 2×) upon crossing of the activation intensitythreshold I_(2×A) and remains at the first fast forward speed (e.g., 2×)until the intensity of the light press input drops below the releaseintensity threshold I_(2×R) for the first fast forward speed (e.g., 2×).When the intensity of the light press input drops below the releaseintensity threshold I_(2×R) for the first fast forward speed (e.g., 2×),the playback speed is decreased from the first fast forward speed (e.g.,2×) to the normal playback speed (e.g., 1×). The media player isreturned from a fast forward state to the normal playback state.

Although the above description of FIGS. 6E and 6F uses fast forwardingas an example. The same control heuristic can be used for rewinding. Forexample, in response to a light press input detected on a rewind control(e.g., rewind control 514) while the media player is in a normalplayback state (e.g., at 1× speed), the media player can change thenormal playback speed in the forward direction to a first rewind speed(e.g., 2×) in the backward direction when the intensity of the lightpress input reaches above the activation intensity threshold associatedwith the first rewind speed (e.g., 2×). Depending on the intensityprofile of the light press input relative to the lock time thresholdT_(L), the rewind speed may be locked in at the first rewind speed(e.g., 2×) in the backward direction, or returned to the normal playbackspeed (e.g., 1×) in the forward direction when the intensity of thelight press input drops below the release intensity associated with thefirst rewind speed (e.g., 2×).

FIG. 6E above illustrates how to lock into a next higher playback speedwith a light press input while the media player is in a normal playbackstate. FIGS. 6F-6H illustrate control heuristics in which higherplayback speeds (e.g., different levels of fast forward or rewindspeeds) are not locked in at the end of the press input (e.g., a deeppress input with an intensity reaching above one or more higheractivation intensity thresholds (e.g., the activation intensitythresholds associated with 2×, 5×, and 10× speeds). Instead, theplayback speed is gradually stepped up in discrete levels and thenstepped down to a predetermined level (e.g., 1×).

FIG. 6G illustrates that, when the media player is already in a normalplayback state (e.g., with a playback speed of 1×), a deep press inputreaching above the respective activation intensity thresholds associatedwith two consecutive fast forward speeds (e.g., I_(2×A) associated withfast forward speed 2×, and I_(5×A) associated with fast forward speed5×) is detected. In response to the rising intensity of the press input,the playback speed is stepped up from the normal playback speed (e.g.,1×) to the first fast forward speed (e.g., 2×) upon the intensitycrossing the activation intensity threshold (e.g., I_(2×A)) associatedwith the first fast forward speed (e.g., 2×). Then, as the intensity ofthe deep press input continues to increase and crosses the next higheractivation intensity threshold (e.g., I_(5×A)) associated with the nexthigher fast forward speed (e.g., 5×), the playback speed is stepped upfrom the first fast forward speed (e.g., 2×) to the next higher fastforward speed (e.g., 5×). When the intensity of the deep press inputthen decreases and crosses the release intensity threshold I_(5×R)associated with the highest achieved fast forward speed (e.g., 5×), theplayback speed is stepped down from the highest achieved fast forwardspeed (e.g., 5×) to the next lower fast forward speed (e.g., 2×). Whenthe intensity of the deep press input further decreases and crosses therelease intensity threshold (e.g., I_(2×R)=I_(LR)) associated with thelowest fast forward speed (e.g., 2×), the media player is returned tothe normal playback state with a normal playback speed (e.g., 1×).

FIG. 6H is similar to FIG. 6G, where the media player is already in anormal playback state (e.g., with a playback speed of 1×) when a deeppress input is detected. The intensity of the deep press input reachesabove the respective activation intensity thresholds associated withthree fast forward speeds (e.g., I_(2×A) associated with fast forwardspeed 2×, I_(5×A) associated with fast forward speed 5×, and I_(10×A)associated with fast forward speed 10×). In response to the risingintensity of the deep press input, the playback speed is stepped up fromthe normal playback speed (e.g., 1×) to the initial fast forward speed(e.g., 2×) upon the intensity crossing the lowest activation intensitythreshold (e.g., I_(2×A)), then from the initial fast forward speed(e.g., 2×) to the next higher fast forward speed (e.g., 5×) upon theintensity crossing the corresponding activation intensity threshold(e.g., I_(5×A)), and then from that higher fast forward speed (e.g., 5×)to the next, even higher fast forward speed (e.g., 10×) upon theintensity crossing the corresponding activation intensity threshold(e.g., I_(10×A)). When the intensity of the deep press input has peakedand started to decrease, the playback speed is stepped down from thehighest achieved fast forward speed (e.g.,10×) to the next lower fastforward speed (e.g., 5×) upon the intensity crossing the releaseintensity threshold (e.g., I_(10×R)) associated with the highestachieved fast forward speed (e.g., 10×). When the intensity of the deeppress input decreases further and crosses the release intensitythreshold (e.g., I_(5×R)) associated with the fast forward speed of 5×,the playback speed is stepped down from the fast forward speed of 5× tothe next lower fast forward speed of 2×. When the intensity of the pressinput decreases further and crosses the release intensity thresholdI_(2×R) (e.g., I_(2×R)=I_(LR)) associated with the fast forward speed of2×, the media player is returned to the normal playback state and staysin the normal playback state with a playback speed of 1×. Correspondinguser interface changes for the scenario shown in FIG. 6H are illustratedin FIGS. 5A-5F.

Although the above description of FIGS. 6G and 6H uses fast forwardingas an example. The same control heuristic can be used for rewinding. Forexample, in response to a deep press input detected on a rewind control(e.g., rewind control 514) while the media player is in a normalplayback state, the device goes from the normal playback state into therewind state, and the rewind speed is stepped up from zero to two ormore higher rewind speeds (e.g., 2×, 5×, and 10×) in the backwarddirection when the intensity of the deep press input reaches above theactivation intensity threshold associated each of those higher rewindspeeds. On the down-stroke of the deep press input, the rewind speed isstepped down from the highest achieved rewind speed to each of the lowerrewind speeds, and finally to zero, when the intensity of the deep pressinput reaches below the release intensity threshold associated with eachof the previously achieved rewind speeds. When the rewind speed is backto zero, the device restarts the playback with a normal playback speedin the forward direction.

FIGS. 6I-6K illustrate three control heuristics in which the initialplayback speed of the media content is greater than the normal playbackspeed, e.g., at a first fast forward speed of 2×, when a press input isdetected.

FIG. 6I illustrates a control heuristic in which the lock time thresholdT_(L) is not used to lock in a higher playback speed (e.g., a fastforward speed of 5×). As shown in FIG. 6I, the initial playback speed atthe time that the press input is received is the first fast forwardspeed (e.g., 2×). In other words, the media content is already beingfast forwarded at 2× speed after a previous press input (e.g., the pressinput described in FIGS. 6A or 6E) on the fast forward control has beenprocessed. As shown in FIG. 6I, in some embodiments, instead oftriggering the next higher fast forward speed (e.g., 5×) upon detectingthe intensity of the press input reaching above the activation intensitythreshold (e.g., I_(5×A)) associated with the next higher fast forwardspeed (e.g., 5×), the playback speed is increased from the current fastforward speed (e.g., 2×) to the next higher fast forward speed (e.g.,5×) when the intensity of the light press input drops below the releaseintensity threshold I_(LR) of a light press. In other words, instead oftriggering the activation of the higher playback speed on thedown-stroke (or pushing down) of the light press input, the higherplayback speed is triggered on the up-stroke (or lifting up) of thelight press input. As shown in FIG. 6I, if the media player is alreadyin a fast forward state, a newly detected tap input on the fast forwardcontrol will cause the media player to go into and lock in the nexthigher fast forward speed (e.g., 5×).

Although the above description of FIGS. 6I uses fast forwarding as anexample. The same control heuristic can be used for rewinding. Forexample, when the media player is already in the rewind state with arewind speed of 2× in the backward direction, in response to a tap inputdetected on the rewind control (e.g., rewind control 514), the mediaplayer changes the rewind speed from 2× to 5× and maintains it at 5× inresponse to the intensity of the tap input falling below the releaseintensity threshold I_(LR).

FIG. 6J illustrates that, when the media player is already in an initialfast forward state (with a fast forward speed of 2×), a deep press inputreaching above the respective activation intensity threshold associatedwith the next higher fast forward speed (e.g., I_(5×A) associated withfast forward speed of 5×) is detected. In response to the risingintensity of the deep press input, the playback speed is stepped up fromthe initial fast forward speed of 2× to the next higher fast forwardspeed of 5× upon the intensity crossing the activation intensitythreshold I_(5×A) associated with the next higher fast forward speed of5×. When the intensity of the deep press input then decreases andcrosses the release intensity threshold I_(5×R) associated with the fastforward speed of 5×, the playback speed is stepped down from the fastforward speed of 5× to the next lower fast forward speed of 2×. When theintensity of the deep press input further decreases and crosses therelease intensity threshold I_(2×R) (e.g., I_(2×R)=I_(LR) ) associatedwith the fast forward speed of 2×, the media player is returned to thenormal playback state with a normal playback speed of 1×.

It is worth noting that in FIGS. 6I and 6J, if the media player isalready in a fast forward state (e.g., with a playback speed of 2×), apress input may trigger the next higher fast forward speed (e.g., 5×)either on the up-stroke (e.g. lifting up) or the down-stroke (e.g.,pushing down) of the press input. Specifically, if the press input is alight press that only crosses the lowest activation intensity threshold(e.g., I_(LA)), the next higher fast forward speed (e.g., 5×) istriggered when the intensity of the press input decreases and crossesthe release intensity threshold (e.g., I_(LR) ) corresponding to thelowest activation intensity threshold (e.g., I_(LA)). In contrast, ifthe press input is a deep press that crosses not only the lowestactivation intensity threshold (e.g., I_(LA)), but also one or morehigher activation intensity thresholds (e.g., I_(5×A) , I_(10×A) ,etc.), the next higher fast forward speed (e.g., 5×) is triggered whenthe intensity of the press input increases and crosses the next higheractivation intensity threshold (e.g., I_(5×A) ).

FIG. 6K illustrates that, when the media player is already in an initialfast forward state (with a fast forward speed of 2×), a deep press inputreaching above the respective activation intensity thresholds associatedwith two higher fast forward speeds (e.g., I_(5×A) associated with fastforward speed 5× and I_(10×A) associated with fast forward speed 10×) isdetected. In response to the rising intensity of the deep press input,the playback speed is stepped up from the initial fast forward speed of2× to the next higher fast forward speed of 5× upon the intensitycrossing the activation intensity threshold I_(5×A) associated with thenext higher fast forward speed of 5×. Then, in response to furtherrising of the intensity of the deep press input, the playback speed isstepped up from the fast forward speed of 5× to the next higher fastforward speed of 10× upon the intensity crossing the activationintensity threshold I_(10×A) associated with the next higher fastforward speed of 10×. When the intensity of the deep press input thendecreases and crosses the release intensity threshold I_(10×R)associated with the fast forward speed of 10×, the playback speed isstepped down from the fast forward speed of 10× to the next lower fastforward speed of 5×. When the intensity of the deep press inputdecreases further and crosses the release intensity threshold I_(5×R)associated with the fast forward speed of 5×, the playback speed isstepped down from the fast forward speed of 5× to the next lower fastforward speed of 2×. When the intensity of the press input decreasesfurther and crosses the release intensity threshold I_(2×R) (e.g.,I_(2×R)=I_(LR) ) associated with the fast forward speed of 2×, the mediaplayer is returned to the normal playback state with a normal playbackspeed of 1×.

Although only three levels of fast forward speeds are shown in FIGS. 6D,6H, and 6K, additional higher levels of fast forward speeds (e.g., 20×,30×, 60×, 100×, 500×, etc.) are possible, each having an increasinglyhigher activation intensity threshold and corresponding releaseintensity threshold.

Similarly, although FIGS. 6I-6K shows the initial playback speed to bethe lowest fast forward speed, the same heuristics shown in thesefigures are optionally used in cases where the initial playback speed ishigher than the lowest fast forward speed. For example, if the initialplayback speed at the time when the press input is detected is 5×, theplayback speed can be stepped up to 10× on the up-stroke (or lifting up)of a light press input when the intensity crosses the release intensitythreshold I_(LR) . If the media player supports additional levels ofplayback speeds above 10× (e.g., 20×, 50×, 100×, etc.) and if theinitial playback speed is 10×, each of these higher playback speeds(e.g., 20×, 50×, 100×) may be achieved one by one with the intensity ofa deep press input crossing respective activation intensity thresholdsassociated with the different higher playback speeds (e.g., 20×, 50×,100×). In some embodiments, the activation and release intensitythresholds of the higher playback speeds may be adjusted (e.g., lowered)depending on the initial playback speed of the media content.

Although the above description of FIGS. 6I-6K uses fast forwarding as anexample. The same control heuristic can be used for rewinding. Inresponse to a light press input detected on the rewind control (e.g.,rewind control 514), the media player can step up the rewind speed froman initial value (e.g., 2×) in the backward direction to the next higherrewind speed (e.g., 5×) upon lift up of the light press input. Inresponse to a deep press input detected on the rewind control, the mediaplayer can step up the rewind speed from the initial value (e.g., 2×) inthe backward direction to one or more higher rewind speeds (e.g., 5×,and/or 10×) in response to the contact intensity crossing thecorresponding activation intensity thresholds of the one or more higherrewind speeds. The media player can then step down the rewind speeds onelevel at a time when the contact intensity of the press input crossesthe release intensity threshold of each of the one or more achievedrewind speeds. In the case of rewinding, when the contact intensity ofthe deep press input crosses the lowest release intensity threshold(e.g., I_(2×R)=I_(LR) ) corresponding to the lowest rewind speed (e.g.,2×), the playback speed is optionally changed from the lowest rewindspeed (e.g., 2×) in the backward direction to the normal playback speed(e.g., 1×) in the forward direction.

Although FIGS. 6A-6K shows the changes in playback speeds in discretesteps that are integer multiples of the normal playback speed (e.g.,1×), in some embodiments, the change from one level to the next may beimplemented as a gradual change that goes through multiple sub-steps(e.g., as factions speeds 1.2, 1.5, 1.7, 1.9, etc.) or a curved slope ina predetermined transition period (e.g., 2 ms). In some embodiments, themapping of the multiple sub-steps to the intensity values of the contactis triggered when a modification input (e.g., holding down an “option”key) is detected concurrently with detecting the interaction with themedia playback control.

In various embodiments, a subset or all of the above control heuristicsmay be implemented in a particular media player application to controlmedia presentation.

FIGS. 7A-7H illustrate a flow diagram of a method 700 of controllingmedia presentation in accordance with some embodiments. The method 700is performed at an electronic device (e.g., device 300, FIG. 3, orportable multifunction device 100, FIG. 1A) with a display, atouch-sensitive surface, and one or more sensors to detect intensity ofcontacts with the touch-sensitive surface. In some embodiments, thedisplay is a touch-screen display and the touch-sensitive surface is onor integrated with the display. In some embodiments, the display isseparate from the touch-sensitive surface. Some operations in method 700are, optionally, combined and/or the order of some operations is,optionally, changed.

As described below, the method 700 provides an intuitive way to controlplayback speed of a media presentation. The method reduces the cognitiveburden on a user when changing media playback speed in softwareapplications, thereby creating a more efficient human-machine interface.For battery-operated electronic devices, enabling a user to controlmedia playback faster and more efficiently conserves power and increasesthe time between battery charges.

While presenting media content (e.g., a collection of images in aslideshow, an audio track, a video, or the like) at a first non-zeroplayback speed, the device detects (702) a press input by a firstcontact on the touch-sensitive surface that corresponds to a focusselector at a first location of a first media control on the display(e.g., a fast-forward control). For example, the first playback speed is1× speed (e.g., FIGS. 6E-6H). In another example, the first playbackspeed is ≥2× where the user previously performed one or more legacytap/click operations at the first location that corresponds to the firstmedia control to present the media item at the first playback speed(e.g., FIGS. 6I-6K).

In response to detecting the press input: the device determines (704)whether an intensity of the first contact (e.g., a characteristicintensity) is above a first intensity threshold. In some embodiments,the first intensity threshold corresponds to a predetermined minimumplayback speed such as 2×, 5×, or 10× . For example, the user must atleast press hard enough to get above the 2× threshold before theplayback speed is changed based on intensity. In some embodiments, theintensity of the first contact passes through a plurality of intensitiesthat correspond to intensity thresholds for playback speeds below thecurrent playback speed.

In accordance with a determination that the intensity of the firstcontact is above the first intensity threshold, the device presents themedia content at a second playback speed, where the second playbackspeed is faster than the first non-zero playback speed. In someembodiments, the first intensity threshold is distinct from a detectionthreshold or an activation intensity threshold, which are lower than thefirst intensity threshold (e.g., the first intensity threshold is higherthan the activation intensity threshold).

In accordance with a determination that the intensity of the firstcontact is below the first intensity threshold, the device maintainspresentation of the media content at the first non-zero playback speed.

In some embodiments, a contact having an intensity above the activationintensity threshold on the touch-sensitive surface at a location thatcorresponds to another user interface element besides the first mediacontrol initiates an operation that corresponds to the another userinterface element. For example, a contact having an intensity above theactivation intensity threshold on the touch-sensitive surface at alocation that corresponds to a play button initiates provision of themedia content at a normal playback speed (e.g., 1×).

In some embodiments, the first non-zero playback speed is (706) a normalplayback speed (e.g., FIGS. 6E-6H). In some embodiments, the mediacontent is presented at the default speed in which the media content wascaptured/generated when played in the normal playback speed (i.e., 1×).

In some embodiments, the first non-zero playback speed is (708) afast-forward playback speed that is greater than or equal to two times anormal playback speed (e.g., FIGS. 6I-6K). In some embodiments, thefirst non-zero playback speed is (710) a rewind playback speed whosemagnitude is greater than or equal to two times a normal playback speed.(e.g., 2×, 5×, etc.).

In some embodiments, the first intensity threshold corresponds (712) toa predetermined minimum intensity value. For example, the user mustpress at least hard enough to get above the intensity threshold thatcorresponds to the 2×, 5×, or 10× playback speed before the playbackspeed is changed based on intensity.

In some embodiments, the first playback control corresponds (714) to afast-forward control (e.g., 512).

In some embodiments, the first playback control corresponds (716) to arewind control (e.g., 514).

In some embodiments, the media content includes (718) a collection ofone or more images, an audio track, and/or a video.

In some embodiments, while presenting the media content at the secondplayback speed, the device detects (720) a subsequent press input by asecond contact distinct from the first contact (e.g., after the firstcontact by a first finger ends/lifts off, a second contact by the samefirst finger is detected as part of a second press input) on thetouch-sensitive surface that corresponds to the focus selector at thefirst location of the first media control on the display. In response todetecting the subsequent press input, the device determines whether anintensity of the second contact has crossed a second intensity thresholdthat is above the first intensity threshold. In some embodiments, theintensity of the second contact is deemed to have crossed above thesecond intensity threshold based on a determination that the intensityof the second contact has changed from below the second intensitythreshold to above the second intensity threshold. In some embodiments,while detecting the subsequent press input and before detecting theintensity of the second contact increase above the second intensitythreshold, the device detects the intensity of the second contactincrease above the first intensity threshold without providing tactileoutput corresponding to crossing the first intensity threshold. Whilecontinuing to detect the second contact on the touch-sensitive surface,and in accordance with a determination that the intensity of the secondcontact has crossed above the second intensity threshold: the deviceprovides tactile output that corresponds to the second intensitythreshold, and presents the media content at a third playback speedgreater than the second playback speed. In accordance with adetermination that the intensity of the second contact has not crossedabove the second intensity threshold, the device foregoes provision ofthe tactile output that corresponds to the second intensity thresholdand continues to present the media content at the second playback speed.In some embodiments, detents are provided upon crossing intensitythresholds that are greater than the one that corresponds to the currentplayback speed (e.g., the second playback speed) but not when crossingthe intensity threshold that corresponds to the current playback speedor any lower speeds. In some embodiments, visual feedback is alsoprovided as the intensity thresholds are crossed that are greater thanthe threshold that corresponds to the current playback speed.

In some embodiments, in response to detecting the press input: thedevice, in accordance with the determination that the intensity of thefirst contact is above the first intensity threshold, provides (722)tactile output that corresponds to the first intensity threshold; and inaccordance with the determination that the intensity of the firstcontact is below the first intensity threshold, the device foregoesprovision of the tactile output that corresponds to the first intensitythreshold. In some embodiments, detents are provided upon crossingintensity thresholds that are greater than the one that corresponds tothe current playback speed (e.g., the first non-zero playback speed) butnot when crossing the intensity threshold that corresponds to thecurrent playback speed or any lower speeds. In some embodiments, visualfeedback is also provided as the intensity thresholds are crossed thatare greater than the one that corresponds to the current playback speed.

In some embodiments, while presenting the media content at the secondplayback speed, the device detects (724) a subsequent press input by asecond contact distinct from the first contact (e.g., after the firstcontact by a first finger ends/lifts off, a second contact by the samefirst finger is detected as part of a second press input) on thetouch-sensitive surface that corresponds to the focus selector at thefirst location of the first media control on the display. Whiledetecting the subsequent press input, the device detects that anintensity of the second contact has crossed above the first intensitythreshold. In response to detecting that the intensity of the secondcontact has crossed above the first intensity threshold: in accordancewith a determination that the first intensity threshold is above apredetermined minimum intensity value (e.g., the predetermined minimumintensity value corresponds to a minimum playback speed for providingtactile output such as 2×, 5×, or 10×), the device provides tactileoutput that corresponds to the first intensity threshold; and, inaccordance with a determination that the first intensity threshold isbelow the predetermined minimum intensity value, the device foregoesprovision of the tactile output that corresponds to the first intensitythreshold.

While continuing to detect the second contact on the touch-sensitivesurface, the device detects (726) that the intensity of the secondcontact has crossed above a second intensity threshold that is above thefirst intensity threshold. In response to detecting that the intensityof the second contact has crossed above the second intensity threshold:in accordance with a determination that the second intensity thresholdequals or exceeds the predetermined minimum intensity value, the deviceprovides tactile output that corresponds to the second intensitythreshold; and, in accordance with a determination that the secondintensity threshold does not equal or exceed the predetermined minimumintensity value, the device foregoes provision of the tactile outputthat corresponds to the second intensity threshold. For example, detentsare provided upon reaching intensity thresholds above and including thepredetermined minimum intensity value for a predefined playback speedsuch as 2×, 5, or 10×. In some embodiments, the predetermined minimumintensity value must be reached before the playback speed is changedbased on intensity. In some embodiments, visual feedback is alsoprovided as the intensity increases above the predetermined minimumintensity value.

In some embodiments, in response to detecting the press input, and inaccordance with the determination that the intensity of the firstcontact is above the first intensity threshold: in accordance with adetermination that the first intensity threshold is above apredetermined minimum intensity value (e.g., the predetermined minimumintensity value corresponds to a minimum playback speed for providingtactile output such as 2×, 5×, or 10×), the device provides (728)tactile output that corresponds to the first intensity threshold; and,in accordance with a determination that the first intensity threshold isbelow the predetermined minimum intensity value, the device foregoesprovision of the tactile output that corresponds to the first intensitythreshold. For example, detents are provided upon reaching intensitythresholds above and including the predetermined minimum intensity valuefor a predefined playback speed such as 2×, 5×, or 10× . In someembodiments, the predetermined minimum intensity value must be reachedbefore the playback speed is changed based on intensity. In someembodiments, visual feedback is also provided as the intensity increasesabove the predetermined minimum intensity value.

In some embodiments, while presenting the media content at the secondplayback speed, and while continuing to detect the first contact on thetouch-sensitive surface: the device detects (730) that the intensity ofthe first contact is above a second intensity threshold distinct fromthe first intensity threshold. In some embodiments, the second intensitythreshold has a pressure or force threshold higher than a pressure orforce threshold in the first intensity threshold. In response todetecting that the intensity of the first contact is above the secondintensity threshold, the device presents the media content at a thirdplayback speed, where the third playback speed is faster than the secondplayback speed. In some embodiments, the playback speeds include 0×, 1×,2×, 5×, 10×, 30×, and 60×. For example, the first playback speed is 1×,the second playback speed is 10×, and the third playback speed is 30×.

In some embodiments, while presenting the media content at the thirdplayback speed, and while continuing to detect the first contact on thetouch-sensitive surface, the device detects (732) that the intensity ofthe first contact has crossed below the second intensity threshold. Inresponse to detecting that the intensity of the first contact hascrossed below the second intensity threshold: the device providestactile output that corresponds to the second intensity threshold andpresents the media content at the second playback speed. In someembodiments, the intensity of the first contact is deemed to havecrossed below the second intensity threshold based on a determinationthat the intensity of the first contact has changed from being above thesecond intensity threshold to being below the second intensitythreshold. While presenting the media content at the second playbackspeed, and while continuing to detect the first contact on thetouch-sensitive surface, the device detects that the intensity of thefirst contact has crossed below the first intensity threshold. Inresponse to detecting that the intensity of the first contact hascrossed below the first intensity threshold: the device provides tactileoutput that corresponds to the first intensity threshold and presentsthe media content at a fourth playback speed. For example, the playbackspeed is reduced and detents are provided as the intensity crosses beloweach intensity threshold.

In some embodiments, while presenting the media content at the secondplayback speed, the device detects (734) a subsequent press input by asecond contact distinct from the first contact (e.g., after the firstcontact by a first finger ends/lifts off, a second contact by the samefirst finger is detected as part of a second press input) on thetouch-sensitive surface that corresponds to the focus selector at thefirst location of the first media control on the display. Whiledetecting the subsequent press input: the device determines whether anintensity of the second contact has not crossed above a second intensitythreshold that is above the first intensity threshold; and, subsequentto a determination that the intensity of the second contact has notcrossed above the second intensity threshold: the device detects thatthe intensity of the second contact has crossed below the firstintensity threshold; and, in response to detecting that the intensity ofthe second contact has crossed below the first intensity threshold, thedevice foregoes provision of a tactile output that corresponds to thefirst intensity threshold.

In some embodiments, while presenting the media content at the secondplayback speed, and while continuing to detect the first contact on thetouch-sensitive surface, the device detects (736) that the intensity ofthe first contact is below the first intensity threshold. In oneexample, lift-off of the first contact is detected. In another example,the intensity of the first contact falls below first intensity thresholdbut lift-off is not detected. In response to detecting that theintensity of the first contact is below the first intensity threshold,the device presents the media content at a fourth playback speed.

In some embodiments, the fourth playback speed is (738) the secondplayback speed. For example, provision of the media content at thesecond playback speed is maintained. In some embodiments, actuation of amodifier key is required to lock in a higher playback speed.

In some embodiments, the fourth playback speed is (740) the firstnon-zero playback speed. For example, the playback speed is reduced fromthe second playback speed. In some embodiments, the playback speedtracks the intensity of the contact, so that as the intensity of thecontact decreases from an intensity above the first intensity thresholdto an intensity below the first intensity threshold, the playback speedis adjusted through a plurality of levels that are mapped to differentcontact intensities.

In some embodiments, the fourth playback speed is (742) a normalplayback speed. In some embodiments, the media content is presented atthe default speed in which that the media content was captured/generatedwhen played in the normal playback speed (i.e., 1×). In someembodiments, in the fourth playback speed (e.g., 0×), a still image thatcorresponds to the media content is presented. For example, in the 0×playback speed, the media content is paused.

In some embodiments, while presenting a still image that corresponds tothe media content, (i.e., 0× playback speed), the device detects (744) asubsequent press input by a second contact distinct from the firstcontact (e.g., after the first contact by a first finger ends/lifts off,a second contact by the same first finger is detected as part of asecond press input) on the touch-sensitive surface that corresponds tothe focus selector at the first location of the first media control onthe display. In some embodiments, the media content is paused whenplayed in the 0× playback speed. In some embodiments, provision of themedia content is paused in response to a user activation (e.g., using atouch input) of a pause button in the user interface. In response todetecting the subsequent press input: the device determines whether anintensity of the second contact (e.g., a characteristic intensity) isabove the first intensity threshold. In accordance with a determinationthat the intensity of the second contact (e.g., characteristicintensity) is above the first intensity threshold, the device presentsthe media content at the second playback speed. In accordance with adetermination that the intensity of the second contact is below thefirst intensity threshold, the device increases the playback speed ofthe media content from the still image up to the second playback speedaccording to the intensity of the second contact. For example, thefast-forward control operates like a gas pedal whereby the playbackspeed increases from 0× to 2× before the intensity of the second contactcrosses the first intensity threshold. Alternatively, in someembodiments, the electronic device maintains presentation of the stillimage corresponding to the media content until the intensity of thesecond contact crosses the first intensity threshold (e.g., a jump from0× to 2×).

In some embodiments, while presenting the media content at a normalplayback speed (e.g., 1×), the device detects (746) a subsequent pressinput by a second contact distinct from the first contact (e.g., afterthe first contact by a first finger ends/lifts off, a second contact bythe same first finger is detected as part of a second press input) onthe touch-sensitive surface that corresponds to the focus selector at asecond location of a second media control (e.g., the play control) onthe display, wherein the second playback control is distinct from thefirst playback control. The device determines whether the intensity ofthe second contact (e.g., characteristic intensity) is above the firstintensity threshold. In accordance with a determination that theintensity of the second contact is above the first intensity threshold,the device presents the media content at a first fractional playbackspeed, wherein the first fractional playback speed is faster than thenormal playback speed and less than two times the normal playback speed.In accordance with a determination that the intensity of the secondcontact is below the first intensity threshold, the device maintainspresentation of the media content at the normal playback speed. In someembodiments, the fractional playback speeds include 1.1×, 1.2×, 1.5×,and 1.7×. Alternatively, in some embodiments, the fractional playbackspeeds are accessed in response to detecting a press input at a locationcorresponding to the first playback control in addition to detectingactivation of a modifier key (e.g., the option key).

In some embodiments, while continuing to detect the second contact onthe touch-sensitive surface: the device detects (748) that the intensityof the second contact is above a second intensity threshold distinctfrom the first intensity threshold. In response to detecting that theintensity of the second contact is above the second intensity threshold,the device presents the media content at a second fractional playbackspeed, wherein the second fractional playback speed is faster than thefirst fractional playback speed and less than two times the normalplayback speed.

In some embodiments, in response to detecting the subsequent pressinput, the device displays (750) a fractional playback scrubber at leastpartially overlaid on the second playback control that indicates acurrent playback speed of the media content. In some embodiments, thefractional playback scrubber is adjacent to but not overlaid on thesecond playback control. In some embodiments, detents are provided whencrossing above all intensity thresholds over a predetermined minimumintensity value. In some embodiments, detents are provided when crossingbelow all intensity thresholds.

In some embodiments, the second playback control corresponds (752) to atleast one of: a play control and a pause control.

It should be understood that the particular order in which theoperations in FIGS. 7A-7H have been described is merely exemplary and isnot intended to indicate that the described order is the only order inwhich the operations could be performed. One of ordinary skill in theart would recognize various ways to reorder the operations describedherein. Additionally, it should be noted that details of other processesdescribed herein with respect to other methods described herein (e.g.,method 800) are also applicable in an analogous manner to method 700described above with respect to FIGS. 7A-7H. For example, the contacts,gestures, press input, user interface objects, tactile outputs,intensity thresholds, focus selectors, and playback speeds describedabove with reference to method 700 optionally have one or more of thecharacteristics of the contacts, gestures, press input, user interfaceobjects, tactile outputs, intensity thresholds, focus selectors,playback speeds described herein with reference to other methodsdescribed herein (e.g., method 800). For brevity, these details are notrepeated here.

FIGS. 8A-8C illustrate a flow diagram of a method 800 of controllingmedia presentation in accordance with some embodiments. The method 800is performed at an electronic device (e.g., device 300, FIG. 3, orportable multifunction device 100, FIG. 1A) with a display, atouch-sensitive surface, and one or more sensors to detect intensity ofcontacts with the touch-sensitive surface. In some embodiments, thedisplay is a touch-screen display and the touch-sensitive surface is onor integrated with the display. In some embodiments, the display isseparate from the touch-sensitive surface. Some operations in method 800are, optionally, combined and/or the order of some operations is,optionally, changed.

As described below, the method 800 provides an intuitive way to controlplayback speed of media presentation. The method reduces the cognitiveburden on a user when changing media playback speed in softwareapplications, thereby creating a more efficient human-machine interface.For battery-operated electronic devices, enabling a user to controlmedia playback faster and more efficiently conserves power and increasesthe time between battery charges.

In some embodiments, while presenting media content (e.g., a collectionof images in a slideshow, an audio track, a video, or the like) at afirst speed, the device detects (802) a press input by a first contacton the touch-sensitive surface that corresponds to a focus selector at afirst location of a first media control on the display (e.g., afast-forward control). In some embodiments, the first speed is not afast-forward speed. For example, the first speed is 0× speed (e.g.,paused) or 1× speed (e.g., normal playback).

In response to detecting the press input by the first contact: thedevice determines (804) whether a first intensity of the first contact(e.g., a characteristic intensity) has satisfied a first intensitythreshold (e.g., an activation intensity threshold). In someembodiments, the first intensity threshold is an activation intensitythreshold for a first intensity stage. Subsequent to determining whetherthe first intensity of the first contact has satisfied the firstintensity threshold (e.g., an activation intensity threshold), thedevice determines whether the first contact continues to satisfy asecond intensity threshold (e.g., remaining above a release intensitythreshold) during a predefined time interval (e.g., before a lock timethreshold is reached). In some embodiments, the second intensitythreshold is a release intensity threshold for the first intensitystage.

In accordance with determining that the first intensity of the firstcontact has satisfied the first intensity threshold and determining thatthe first contact continues to satisfy the second intensity thresholdduring the predefined time interval, the device presents the mediacontent at a first fast-forward speed that is higher than the firstspeed as long as the first contact satisfies the second intensitythreshold (e.g., as shown in FIGS. 6B and 6F, where the higher speed isnot locked in at the end of the press input).

In accordance with determining that the intensity of the first contacthas satisfied the first intensity threshold and determining that thefirst contact does not continue to satisfy the second intensitythreshold during the predefined time interval (e.g., the first contactis lifted off or the intensity of the first contact falls below thesecond intensity threshold during the predefined time interval), thedevice presents the media content at the first fast-forward speed (e.g.,even though the first contact is no longer detected on thetouch-sensitive surface) (e.g., as shown in FIGS. 6A and 6E, where thehigher speed is locked in).

In some embodiments, the first intensity threshold is (806) higher thanthe second intensity threshold (e.g., the activation intensity thresholdfor the first fast forward speed may be higher than the releaseintensity threshold for the first fast forward speed). In someembodiments, the first intensity threshold is identical to the secondintensity threshold.

In some embodiments, while presenting the media content at the firstfast-forward speed (e.g., 2×) in accordance with determining that thefirst intensity of the first contact has satisfied the first intensitythreshold and determining that the first contact continues to satisfythe second intensity threshold during the predefined time interval, thedevice detects (808) a second intensity of the first contact that doesnot satisfy the second intensity threshold subsequent to the predefinedtime interval (e.g., as shown in FIG. 6B and 6F, where the intensity ofthe press input falls below the release intensity threshold for 2× afterthe lock time threshold has expired). In response to detecting thesecond intensity of the first contact that does not satisfy the secondintensity threshold subsequent to the predefined time interval, thedevice ceases to present the media content at the first fast-forwardspeed (e.g., as shown in FIG. 6B and 6F, where the playback speed isreturned to the initial playback speed when the contact intensitycrosses the release intensity threshold associated with the first fastforward speed of 2×). In some embodiments, ceasing to present the mediacontent at the first fast-forward speed includes presenting the mediacontent at the first speed. In some embodiments, ceasing to present themedia content at the first fast-forward speed includes presenting themedia content at a normal playback speed (e.g., as shown in FIG. 6Fwhere the final speed is 1×). In some embodiments, ceasing to presentthe media content at the first fast-forward speed includes presenting astill image of the media content (e.g., paused state and/or 0× speed)(e.g., as shown in FIG. 6B where the final speed is 0×).

In some embodiments, while presenting the media content at the firstfast-forward speed (e.g., 2×) in accordance with determining that thefirst intensity of the first contact has satisfied the first intensitythreshold and determining that the first contact does not continue tosatisfy the second intensity threshold during the predefined timeinterval, the device detects (810) a press input by a second contact onthe touch-sensitive surface that corresponds to the focus selector atthe first location of the first media control on the display. In someembodiments, the second contact is distinct and separate from the firstcontact. The device determines whether a first intensity of the secondcontact (e.g., a characteristic intensity) has satisfied the firstintensity threshold (e.g., an activation intensity threshold).Subsequent to determining whether the first intensity of the secondcontact has satisfied the first intensity threshold (e.g., an activationintensity threshold), the device determines whether the second contactsatisfies the second intensity threshold (e.g., remaining above arelease intensity threshold). In accordance with determining that thefirst intensity of the second contact has satisfied the first intensitythreshold (e.g., I_(LA)) and subsequently determining that the secondcontact does not satisfy the second intensity threshold (e.g., I_(LR) ),the device presents the media content at a second fast-forward speed(e.g., 5×) that is higher than the first fast-forward speed (e.g., 2×).This is illustrated in FIG. 6I, for example, after the intensity of thepress input has risen above I_(LA), reached a peak, and then fallen to apoint just below I_(LR) , the playback speed is increased to 5×.

In some embodiments, in response to detecting the press input by thesecond contact, in accordance with determining that the first intensityof the second contact has satisfied the first intensity threshold (e.g.,I_(LA)) and subsequently determining that the second contact satisfiesthe second intensity threshold (e.g., I_(LR) ), the device presents(812) the media content at the first fast-forward speed while the secondcontact satisfies the second intensity threshold. This is illustrated inFIG. 6I, for example, where, after the intensity of the press input hasrisen above I_(LA), and remains above I_(LR) , the playback speedremains at 2×, and does not increase to 5× until the intensity falls toa point below I_(LR) .

In some embodiments, in response to detecting the press input by thesecond contact, in accordance with determining that the first intensityof the second contact has satisfied the first intensity threshold andsubsequently determining that the second contact satisfies the secondintensity threshold, the device visually distinguishes (814) the firstmedia control on the display while the second contact satisfies thesecond intensity threshold. In some embodiments, the visual distinctionindicates that the second contact satisfies the second intensitythreshold. For example, in FIG. 6I, during the period of time after theintensity of the press input has risen above I_(LA), reached a peak, andthen fallen to a point just above I_(LR) , the playback speed remains at2×, but the media control being activated by the press input isoptionally highlighted to indicate that the activation intensitythreshold for the next higher play speed has been achieved, and thatceasing the press input now would cause an increase in the playbackspeed and subsequent locking in of the increased playback speed.

In some embodiments, while presenting the media content at the firstfast-forward speed (e.g., 2×) in accordance with determining that thefirst intensity of the first contact has satisfied the first intensitythreshold and determining that the first contact continues to satisfythe second intensity threshold during the predefined time interval andwhile continuing to detect the first contact on the touch-sensitivesurface, the device detects (816) a second intensity of the firstcontact that satisfies a third intensity threshold (e.g., I_(5×A)) thatis higher than the first intensity threshold (e.g., I_(2×A)). In someembodiments, the third intensity threshold is an activation intensitythreshold for the second intensity stage (e.g., 5×). In response todetecting the second intensity of the first contact, the device presentsthe media content at the second fast-forward speed (e.g., 5×) that ishigher than the first fast-forward speed (e.g., 2×). This is illustratedin FIG. 6J, where a deep press meeting I_(5×A) causes the playback speedto increase from 2× to 5×.

In some embodiments, while presenting the media content at the secondfast-forward speed (e.g., 5×) and while continuing to detect the firstcontact on the touch-sensitive surface, the device detects (818) a thirdintensity of the first contact that does not satisfy a fourth intensitythreshold (e.g., I_(5×R)). In some embodiments, the fourth intensitythreshold is a release intensity threshold for the second intensitystage. In some embodiments, the fourth intensity threshold is identicalto the third intensity threshold. In some embodiments, the fourthintensity threshold is distinct from the third intensity threshold. Inresponse to detecting the third intensity of the first contact, thedevice presents the media content at the first fast-forward speed. Thisis illustrated in FIG. 6J, where after the intensity of the deep pressinput falls below the release intensity threshold I_(5×R) , thepreviously achieved higher playback speed 5× is reduced to 2× again.

It should be understood that the particular order in which theoperations in FIGS. 8A-8C have been described is merely exemplary and isnot intended to indicate that the described order is the only order inwhich the operations could be performed. One of ordinary skill in theart would recognize various ways to reorder the operations describedherein. Additionally, it should be noted that details of other processesdescribed herein with respect to other methods described herein (e.g.,method 700) are also applicable in an analogous manner to method 800described above with respect to FIGS. 8A-8C. For example, the contacts,gestures, press input, user interface objects, tactile outputs,intensity thresholds, focus selectors, and playback speeds describedabove with reference to method 800 optionally have one or more of thecharacteristics of the contacts, gestures, press input, user interfaceobjects, tactile outputs, intensity thresholds, focus selectors,playback speeds described herein with reference to other methodsdescribed herein (e.g., method 700). For brevity, these details are notrepeated here.

In accordance with some embodiments, FIG. 9 shows a functional blockdiagram of an electronic device 900 configured in accordance with theprinciples of the various described embodiments. The functional blocksof the device are, optionally, implemented by hardware, software,firmware, or a combination thereof to carry out the principles of thevarious described embodiments. It is understood by persons of skill inthe art that the functional blocks described in FIG. 9 are, optionally,combined or separated into sub-blocks to implement the principles of thevarious described embodiments. Therefore, the description hereinoptionally supports any possible combination or separation or furtherdefinition of the functional blocks described herein.

As shown in FIG. 9, an electronic device 900 includes a display unit 902configured to display a user interface, a touch-sensitive surface unit904 configured to receive contacts, one or more sensor units 906configured to detect intensity of contacts with the touch-sensitivesurface unit 904; and a processing unit 910 coupled with the displayunit 902, the touch-sensitive surface unit 904 and the one or moresensor units 906. In some embodiments, the processing unit 910 includes:a detecting unit 912, a determining unit 914, a presenting unit 916, amaintaining unit 918, a providing unit 920, and an increasing unit 922.

The processing unit 910 is configured to: while presenting media contentat a first non-zero playback speed, detect a press input by a firstcontact on the touch-sensitive surface that corresponds to a focusselector at a first location of a first media control on the display(e.g., with the detecting unit 912); and, in response to detecting thepress input: determine whether an intensity of the first contact isabove a first intensity threshold (e.g., with the determining unit 914);in accordance with a determination that the intensity of the firstcontact is above the first intensity threshold, present the mediacontent at a second playback speed (e.g., with the presenting unit 916),wherein the second playback speed is faster than the first non-zeroplayback speed; and, in accordance with a determination that theintensity of the first contact is below the first intensity threshold,maintain presentation of the media content at the first non-zeroplayback speed (e.g., with the maintaining unit 918).

In some embodiments, the first non-zero playback speed is a normalplayback speed.

In some embodiments, the first non-zero playback speed is a fast-forwardplayback speed that is greater than or equal to two times a normalplayback speed.

In some embodiments, the first non-zero playback speed is a rewindplayback speed whose magnitude is greater than or equal to two times anormal playback speed.

In some embodiments, the first intensity threshold corresponds to apredetermined minimum intensity value.

In some embodiments, the first playback control corresponds to afast-forward control.

In some embodiments, the first playback control corresponds to a rewindcontrol.

In some embodiments, the media content includes a collection of one ormore images, an audio track, and/or a video.

In some embodiments, the processing unit 910 is further configured to:while presenting the media content at the second playback speed, detecta subsequent press input by a second contact distinct from the firstcontact on the touch-sensitive surface that corresponds to the focusselector at the first location of the first media control on the display(e.g., with the detecting unit 912); in response to detecting thesubsequent press input, determine whether an intensity of the secondcontact has crossed a second intensity threshold that is above the firstintensity threshold (e.g., with the determining unit 914); whilecontinuing to detect the second contact on the touch-sensitive surface,and in accordance with a determination that the intensity of the secondcontact has crossed above the second intensity threshold: providetactile output that corresponds to the second intensity threshold (e.g.,with the providing unit 920); and present the media content at a thirdplayback speed greater than the second playback speed (e.g., with thepresenting unit 916); and, in accordance with a determination that theintensity of the second contact has not crossed above the secondintensity threshold, forego provision of the tactile output thatcorresponds to the second intensity threshold and continuing to presentthe media content at the second playback speed (e.g., with the providingunit 924).

In some embodiments, the processing unit 910 is further configured to:in response to detecting the press input: in accordance with thedetermination that the intensity of the first contact is above the firstintensity threshold, provide tactile output that corresponds to thefirst intensity threshold (e.g., with the providing unit 920); and, inaccordance with the determination that the intensity of the firstcontact is below the first intensity threshold, forego provision of thetactile output that corresponds to the first intensity threshold (e.g.,with the providing unit 920).

In some embodiments, the processing unit 910 is further configured to:while presenting the media content at the second playback speed, detecta subsequent press input by a second contact distinct from the firstcontact on the touch-sensitive surface that corresponds to the focusselector at the first location of the first media control on the display(e.g., with the detecting unit 912); in response to detecting thesubsequent press input, detect that an intensity of the second contacthas crossed above the first intensity threshold (e.g., with thedetecting unit 912); in response to detecting that the intensity of thesecond contact has crossed above the first intensity threshold: inaccordance with a determination that the first intensity threshold isabove a predetermined minimum intensity value, provide tactile outputthat corresponds to the first intensity threshold (e.g., with theproviding unit 920); and, in accordance with a determination that thefirst intensity threshold is below the predetermined minimum intensityvalue, forego provision of the tactile output that corresponds to thefirst intensity threshold (e.g., with the providing unit 920); and,while continuing to detect the second contact on the touch-sensitivesurface, detect that the intensity of the second contact has crossedabove a second intensity threshold that is above the first intensitythreshold (e.g., with the detecting unit 912): in response to detectingthat the intensity of the second contact has crossed above the secondintensity threshold: in accordance with a determination that the secondintensity threshold equals or exceeds the predetermined minimumintensity value, provide tactile output that corresponds to the secondintensity threshold (e.g., with the providing unit 920); and, inaccordance with a determination that the second intensity threshold doesnot equal or exceed the predetermined minimum intensity value, foregoprovision of the tactile output that corresponds to the second intensitythreshold (e.g., with the providing unit 920).

In some embodiments, the processing unit 910 is further configured to:in response to detecting the press input, and in accordance with thedetermination that the intensity of the first contact is above the firstintensity threshold: in accordance with a determination that the firstintensity threshold is above a predetermined minimum intensity value,provide tactile output that corresponds to the first intensity threshold(e.g., with the providing unit 920); and, in accordance with adetermination that the first intensity threshold is below thepredetermined minimum intensity value, forego provision of the tactileoutput that corresponds to the first intensity threshold (e.g., with theproviding unit 920).

In some embodiments, the processing unit 910 is further configured to:while presenting the media content at the second playback speed, andwhile continuing to detect the first contact on the touch-sensitivesurface: detect that the intensity of the first contact is above asecond intensity threshold distinct from the first intensity threshold(e.g., with the detecting unit 912); and, in response to detecting thatthe intensity of the first contact is above the second intensitythreshold, present the media content at a third playback speed, whereinthe third playback speed is faster than the second playback speed (e.g.,with the presenting unit 912).

In some embodiments, the processing unit 910 is further configured to:while presenting the media content at the third playback speed, andwhile continuing to detect the first contact on the touch-sensitivesurface, detect that the intensity of the first contact has crossedbelow the second intensity threshold (e.g., with the detecting unit912); in response to detecting that the intensity of the first contacthas crossed below the second intensity threshold: provide tactile outputthat corresponds to the second intensity threshold (e.g., with theproviding unit 920); and present the media content at the secondplayback speed (e.g., with the presenting unit 916); and, whilepresenting the media content at the second playback speed, and whilecontinuing to detect the first contact on the touch-sensitive surface,detect that the intensity of the first contact has crossed below thefirst intensity threshold (e.g., with the detecting unit 912); inresponse to detecting that the intensity of the first contact hascrossed below the first intensity threshold: provide tactile output thatcorresponds to the first intensity threshold (e.g., with the providingunit 920); and present the media content at a fourth playback speed(e.g., with the presenting unit 916).

In some embodiments, the processing unit 910 is further configured to:while presenting the media content at the second playback speed, detecta subsequent press input by a second contact distinct from the firstcontact on the touch-sensitive surface that corresponds to the focusselector at the first location of the first media control on the display(e.g., with the detecting unit 912); and while detecting the subsequentpress input: determine whether an intensity of the second contact hasnot crossed above a second intensity threshold that is above the firstintensity threshold (e.g., with the determining unit 914); and,subsequent to a determination that the intensity of the second contacthas not crossed above the second intensity threshold: detect that theintensity of the second contact has crossed below the first intensitythreshold (e.g., with the detecting unit 912); and, in response todetecting that the intensity of the second contact has crossed below thefirst intensity threshold, forego provision of a tactile output thatcorresponds to the first intensity threshold (e.g., with the providingunit 920).

In some embodiments, the processing unit 910 is further configured to:while presenting the media content at the second playback speed, andwhile continuing to detect the first contact on the touch-sensitivesurface, detect that the intensity of the first contact is below thefirst intensity threshold (e.g., with the detecting unit 912); and, inresponse to detecting that the intensity of the first contact is belowthe first intensity threshold, present the media content at a fourthplayback speed (e.g., with the presenting unit 914).

In some embodiments, the fourth playback speed is the second playbackspeed.

In some embodiments, the fourth playback speed is the first non-zeroplayback speed.

In some embodiments, the fourth playback speed is a normal playbackspeed.

In some embodiments, the processing unit 910 is further configured to:while presenting a still image that corresponds to the media content,detect a subsequent press input by a second contact distinct from thefirst contact on the touch-sensitive surface that corresponds to thefocus selector at the first location of the first media control on thedisplay (e.g., with the detecting unit 912); and, in response todetecting the subsequent press input: determine whether an intensity ofthe second contact is above the first intensity threshold (e.g., withthe determining unit 914); in accordance with a determination that theintensity of the second contact is above the first intensity threshold,present the media content at the second playback speed (e.g., with thepresenting unit 916); and, in accordance with a determination that theintensity of the second contact is below the first intensity threshold,increase the playback speed of the media content from the still image upto the second playback speed according to the intensity of the secondcontact (e.g., with the increasing unit 922).

In some embodiments, the processing unit 910 is further configured to:while presenting the media content at a normal playback speed , detect asubsequent press input by a second contact distinct from the firstcontact on the touch-sensitive surface that corresponds to the focusselector at a second location of a second media control on the display(e.g., with the detecting unit 912), wherein the second playback controlis distinct from the first playback control; and, in response todetecting the subsequent press input: determine whether the intensity ofthe second contact is above the first intensity threshold (e.g., withthe determining unit 914); in accordance with a determination that theintensity of the second contact is above the first intensity threshold,present the media content at a first fractional playback speed, whereinthe first fractional playback speed is faster than the normal playbackspeed and less than two times the normal playback speed (e.g., with thepresenting unit 916); and, in accordance with a determination that theintensity of the second contact is below the first intensity threshold,maintain presentation of the media content at the normal playback speed(e.g., with the maintaining unit 918).

In some embodiments, the processing unit 910 is further configured to:while continuing to detect the second contact on the touch-sensitivesurface: detect that the intensity of the second contact is above asecond intensity threshold distinct from the first intensity threshold(e.g., with the detecting unit 912); and, in response to detecting thatthe intensity of the second contact is above the second intensitythreshold, present the media content at a second fractional playbackspeed (e.g., with the presenting unit 916), wherein the secondfractional playback speed is faster than the first fractional playbackspeed and less than two times the normal playback speed.

In some embodiments, the processing unit 910 is further configured to:in response to detecting the subsequent press input, display afractional playback scrubber at least partially overlaid on the secondplayback control that indicates a current playback speed of the mediacontent (e.g., with the display unit 902).

In some embodiments, the second playback control corresponds to at leastone of: a play control and a pause control.

In accordance with some embodiments, FIG. 10 shows a functional blockdiagram of an electronic device 1000 configured in accordance with theprinciples of the various described embodiments. The functional blocksof the device are, optionally, implemented by hardware, software,firmware, or a combination thereof to carry out the principles of thevarious described embodiments. It is understood by persons of skill inthe art that the functional blocks described in FIG. 10 are, optionally,combined or separated into sub-blocks to implement the principles of thevarious described embodiments. Therefore, the description hereinoptionally supports any possible combination or separation or furtherdefinition of the functional blocks described herein.

As shown in FIG. 10, an electronic device 1000 includes a display unit1002 configured to display a user interface, a touch-sensitive surfaceunit 1004 configured to receive contacts, one or more sensor units 1006configured to detect intensity of contacts with the touch-sensitivesurface unit 1004; and a processing unit 1010 coupled with the displayunit 1002, the touch-sensitive surface unit 1004 and the one or moresensor units 1006. In some embodiments, the processing unit 1010includes: a detecting unit 1012, a determining unit 1014, a presentingunit 1016, a ceasing unit 1018, and a distinguishing unit 1020.

The processing unit 1010 is configured to: while presenting mediacontent at a first speed, detect a press input by a first contact on thetouch-sensitive surface that corresponds to a focus selector at a firstlocation of a first media control on the display (e.g., with thedetecting unit 1012); and, in response to detecting the press input bythe first contact: determine whether a first intensity of the firstcontact has satisfied a first intensity threshold (e.g., with thedetermining unit 1014); subsequent to determining whether the firstintensity of the first contact has satisfied the first intensitythreshold, determine whether the first contact continues to satisfy asecond intensity threshold during a predefined time interval (e.g., withthe determining unit 1014); in accordance with determining that thefirst intensity of the first contact has satisfied the first intensitythreshold and determining that the first contact continues to satisfythe second intensity threshold during the predefined time interval,present the media content at a first fast-forward speed that is higherthan the first speed as long as the first contact satisfies the secondintensity threshold (e.g., with the presenting unit 1016); and, inaccordance with determining that the intensity of the first contact hassatisfied the first intensity threshold and determining that the firstcontact does not continue to satisfy the second intensity thresholdduring the predefined time interval, present the media content at thefirst fast-forward speed (e.g., with the presenting unit 1016).

In some embodiments, the first intensity threshold is higher than thesecond intensity threshold.

In some embodiments, the processing unit 1010 is further configured to:while presenting the media content at the first fast-forward speed inaccordance with determining that the first intensity of the firstcontact has satisfied the first intensity threshold and determining thatthe first contact continues to satisfy the second intensity thresholdduring the predefined time interval, detect a second intensity of thefirst contact that does not satisfy the second intensity thresholdsubsequent to the predefined time interval (e.g., with the detectingunit 1012); and, in response to detecting the second intensity of thefirst contact that does not satisfy the second intensity thresholdsubsequent to the predefined time interval, cease to present the mediacontent at the first fast-forward speed (e.g., with the ceasing unit1018).

In some embodiments, the processing unit 1010 is further configured to:while presenting the media content at the first fast-forward speed inaccordance with determining that the first intensity of the firstcontact has satisfied the first intensity threshold and determining thatthe first contact does not continue to satisfy the second intensitythreshold during the predefined time interval, detect a press input by asecond contact on the touch-sensitive surface that corresponds to thefocus selector at the first location of the first media control on thedisplay (e.g., with the detecting unit 1012); determine whether a firstintensity of the second contact has satisfied the first intensitythreshold (e.g., with the determining unit 1014); subsequent todetermining whether the first intensity of the second contact hassatisfied the first intensity threshold, determine whether the secondcontact satisfies the second intensity threshold (e.g., with thedetermining unit 1014); and, in accordance with determining that thefirst intensity of the second contact has satisfied the first intensitythreshold and subsequently determining that the second contact does notsatisfy the second intensity threshold, present the media content at asecond fast-forward speed that is higher than the first fast-forwardspeed (e.g., with the presenting unit 1016).

In some embodiments, the processing unit 1010 is further configured to:in response to detecting the press input by the second contact, inaccordance with determining that the first intensity of the secondcontact has satisfied the first intensity threshold and subsequentlydetermining that the second contact satisfies the second intensitythreshold, present the media content at the first fast-forward speedwhile the second contact satisfies the second intensity threshold (e.g.,with the presenting unit 1016).

In some embodiments, the processing unit 1010 is further configured to:in response to detecting the press input by the second contact, inaccordance with determining that the first intensity of the secondcontact has satisfied the first intensity threshold and subsequentlydetermining that the second contact satisfies the second intensitythreshold, visually distinguish the first media control on the displaywhile the second contact satisfies the second intensity threshold (e.g.,with the distinguishing unit 1020).

In some embodiments, the processing unit 1010 is further configured to:while presenting the media content at the first fast-forward speed inaccordance with determining that the first intensity of the firstcontact has satisfied the first intensity threshold and determining thatthe first contact continues to satisfy the second intensity thresholdduring the predefined time interval and while continuing to detect thefirst contact on the touch-sensitive surface, detect a second intensityof the first contact that satisfies a third intensity threshold that ishigher than the first intensity threshold (e.g., with the detecting unit1012); and, in response to detecting the second intensity of the firstcontact, present the media content at the second fast-forward speed thatis higher than the first fast-forward speed (e.g., with the presentingunit 1016).

In some embodiments, the processing unit 1012 is further configured to:while presenting the media content at the second fast-forward speed andwhile continuing to detect the first contact on the touch-sensitivesurface, detect a third intensity of the first contact that does notsatisfy a fourth intensity threshold (e.g., with the detecting unit1012); and, in response to detecting the third intensity of the firstcontact, present the media content at the first fast-forward speed(e.g., with the presenting unit 1016).

The operations in the information processing methods described aboveare, optionally implemented by running one or more functional modules ininformation processing apparatus such as general purpose processors(e.g., as described above with respect to FIGS. 1A and 3) or applicationspecific chips.

The operations described above with reference to FIGS. 7A-7H and 8A-8Care, optionally, implemented by components depicted in FIGS. 1A-1B orFIGS. 9 and 10. For example, detection operation 702, and determinationand presentation operations 704 are, optionally, implemented by eventsorter 170, event recognizer 180, and event handler 190. Event monitor171 in event sorter 170 detects a contact on touch-sensitive display112, and event dispatcher module 174 delivers the event information toapplication 136-1. A respective event recognizer 180 of application136-1 compares the event information to respective event definitions186, and determines whether a first contact at a first location on thetouch-sensitive surface (or whether rotation of the device) correspondsto a predefined event or sub-event, such as selection of an object on auser interface, or rotation of the device from one orientation toanother. When a respective predefined event or sub-event is detected,event recognizer 180 activates an event handler 190 associated with thedetection of the event or sub-event. Event handler 190 optionally usesor calls data updater 176 or object updater 177 to update theapplication internal state 192. In some embodiments, event handler 190accesses a respective GUI updater 178 to update what is displayed by theapplication. Similarly, it would be clear to a person having ordinaryskill in the art how other processes can be implemented based on thecomponents depicted in FIGS. 1A-1B.

The foregoing description, for purpose of explanation, has beendescribed with reference to specific embodiments. However, theillustrative discussions above are not intended to be exhaustive or tolimit the invention to the precise forms disclosed. Many modificationsand variations are possible in view of the above teachings. Theembodiments were chosen and described in order to best explain theprinciples of the invention and its practical applications, to therebyenable others skilled in the art to best use the invention and variousdescribed embodiments with various modifications as are suited to theparticular use contemplated.

What is claimed is:
 1. A non-transitory computer readable storage mediumstoring one or more programs, the one or more programs comprisinginstructions which, when executed by an electronic device with adisplay, a touch-sensitive surface, and one or more sensors to detectintensities of contacts with the touch-sensitive surface, cause theelectronic device to: while presenting media content at a first speed,detect a press input by a first contact on the touch-sensitive surfacethat corresponds to a focus selector at a first location of a firstmedia control on the display; and, in response to detecting the pressinput by the first contact: determine whether a first intensity of thefirst contact has satisfied a first intensity threshold; subsequent todetermining whether the first intensity of the first contact hassatisfied the first intensity threshold, determine whether the firstcontact continues to satisfy a second intensity threshold during apredefined time interval; in accordance with determining that the firstintensity of the first contact has satisfied the first intensitythreshold and determining that the first contact continues to satisfythe second intensity threshold during the predefined time interval,present the media content at a first fast-forward speed that is higherthan the first speed as long as the first contact satisfies the secondintensity threshold; and, in accordance with determining that the firstintensity of the first contact has satisfied the first intensitythreshold and determining that the first contact does not continue tosatisfy the second intensity threshold during the predefined timeinterval, present the media content at the first fast-forward speed. 2.The storage medium of claim 1, wherein the first intensity threshold ishigher than the second intensity threshold.
 3. The storage medium ofclaim 1, including instructions which, when executed by the electronicdevice, cause the electronic device to: while presenting the mediacontent at the first fast-forward speed in accordance with determiningthat the first intensity of the first contact has satisfied the firstintensity threshold and determining that the first contact continues tosatisfy the second intensity threshold during the predefined timeinterval, detect a second intensity of the first contact that does notsatisfy the second intensity threshold subsequent to the predefined timeinterval; and, in response to detecting the second intensity of thefirst contact that does not satisfy the second intensity thresholdsubsequent to the predefined time interval, cease to present the mediacontent at the first fast-forward speed.
 4. The storage medium of claim1, including instructions which, when executed by the electronic device,cause the electronic device to: while presenting the media content atthe first fast-forward speed in accordance with determining that thefirst intensity of the first contact has satisfied the first intensitythreshold and determining that the first contact does not continue tosatisfy the second intensity threshold during the predefined timeinterval, detect a press input by a second contact on thetouch-sensitive surface that corresponds to the focus selector at thefirst location of the first media control on the display; and, determinewhether a first intensity of the second contact has satisfied the firstintensity threshold; subsequent to determining whether the firstintensity of the second contact has satisfied the first intensitythreshold, determine whether the second contact satisfies the secondintensity threshold; and, in accordance with determining that the firstintensity of the second contact has satisfied the first intensitythreshold and subsequently determining that the second contact does notsatisfy the second intensity threshold, present the media content at asecond fast-forward speed that is higher than the first fast-forwardspeed.
 5. The storage medium of claim 4, including instructions which,when executed by the electronic device, cause the electronic device to:in response to detecting the press input by the second contact, inaccordance with determining that the first intensity of the secondcontact has satisfied the first intensity threshold and subsequentlydetermining that the second contact satisfies the second intensitythreshold, present the media content at the first fast-forward speedwhile the second contact satisfies the second intensity threshold. 6.The storage medium of claim 5, including instructions which, whenexecuted by the electronic device, cause the electronic device to: inresponse to detecting the press input by the second contact, inaccordance with determining that the first intensity of the secondcontact has satisfied the first intensity threshold and subsequentlydetermining that the second contact satisfies the second intensitythreshold, visually distinguish the first media control on the displaywhile the second contact satisfies the second intensity threshold. 7.The storage medium of claim 1, including instructions which, whenexecuted by the electronic device, cause the electronic device to: whilepresenting the media content at the first fast-forward speed inaccordance with determining that the first intensity of the firstcontact has satisfied the first intensity threshold and determining thatthe first contact continues to satisfy the second intensity thresholdduring the predefined time interval and while continuing to detect thefirst contact on the touch-sensitive surface, detect a second intensityof the first contact that satisfies a third intensity threshold that ishigher than the first intensity threshold; and, in response to detectingthe second intensity of the first contact, present the media content ata second fast-forward speed that is higher than the first fast-forwardspeed.
 8. The storage medium of claim 7, including instructions which,when executed by the electronic device, cause the electronic device to:while presenting the media content at the second fast-forward speed andwhile continuing to detect the first contact on the touch-sensitivesurface, detect a third intensity of the first contact that does notsatisfy a fourth intensity threshold; and, in response to detecting thethird intensity of the first contact, present the media content at thefirst fast-forward speed.
 9. An electronic device, comprising: adisplay; a touch-sensitive surface; one or more sensors to detectintensities of contacts with the touch-sensitive surface; one or moreprocessors; memory; and one or more programs, wherein the one or moreprograms are stored in the memory and configured to be executed by theone or more processors, the one or more programs including instructionsfor: while presenting media content at a first speed, detecting a pressinput by a first contact on the touch-sensitive surface that correspondsto a focus selector at a first location of a first media control on thedisplay; and, in response to detecting the press input by the firstcontact: determining whether a first intensity of the first contact hassatisfied a first intensity threshold; subsequent to determining whetherthe first intensity of the first contact has satisfied the firstintensity threshold, determining whether the first contact continues tosatisfy a second intensity threshold during a predefined time interval;in accordance with determining that the first intensity of the firstcontact has satisfied the first intensity threshold and determining thatthe first contact continues to satisfy the second intensity thresholdduring the predefined time interval, presenting the media content at afirst fast-forward speed that is higher than the first speed as long asthe first contact satisfies the second intensity threshold; and, inaccordance with determining that the first intensity of the firstcontact has satisfied the first intensity threshold and determining thatthe first contact does not continue to satisfy the second intensitythreshold during the predefined time interval, presenting the mediacontent at the first fast-forward speed.
 10. The electronic device ofclaim 9, wherein the first intensity threshold is higher than the secondintensity threshold.
 11. The electronic device of claim 9, wherein theone or more programs include instructions for: while presenting themedia content at the first fast-forward speed in accordance withdetermining that the first intensity of the first contact has satisfiedthe first intensity threshold and determining that the first contactcontinues to satisfy the second intensity threshold during thepredefined time interval, detecting a second intensity of the firstcontact that does not satisfy the second intensity threshold subsequentto the predefined time interval; and, in response to detecting thesecond intensity of the first contact that does not satisfy the secondintensity threshold subsequent to the predefined time interval, ceasingto present the media content at the first fast-forward speed.
 12. Theelectronic device of claim 9, wherein the one or more programs includeinstructions for: while presenting the media content at the firstfast-forward speed in accordance with determining that the firstintensity of the first contact has satisfied the first intensitythreshold and determining that the first contact does not continue tosatisfy the second intensity threshold during the predefined timeinterval, detecting a press input by a second contact on thetouch-sensitive surface that corresponds to the focus selector at thefirst location of the first media control on the display; and,determining whether a first intensity of the second contact hassatisfied the first intensity threshold; subsequent to determiningwhether the first intensity of the second contact has satisfied thefirst intensity threshold, determining whether the second contactsatisfies the second intensity threshold; and, in accordance withdetermining that the first intensity of the second contact has satisfiedthe first intensity threshold and subsequently determining that thesecond contact does not satisfy the second intensity threshold,presenting the media content at a second fast-forward speed that ishigher than the first fast-forward speed.
 13. The electronic device ofclaim 12, wherein the one or more programs include instructions for: inresponse to detecting the press input by the second contact, inaccordance with determining that the first intensity of the secondcontact has satisfied the first intensity threshold and subsequentlydetermining that the second contact satisfies the second intensitythreshold, presenting the media content at the first fast-forward speedwhile the second contact satisfies the second intensity threshold. 14.The electronic device of claim 13, wherein the one or more programsinclude instructions for: in response to detecting the press input bythe second contact, in accordance with determining that the firstintensity of the second contact has satisfied the first intensitythreshold and subsequently determining that the second contact satisfiesthe second intensity threshold, visually distinguishing the first mediacontrol on the display while the second contact satisfies the secondintensity threshold.
 15. The electronic device of claim 9, wherein theone or more programs include instructions for: while presenting themedia content at the first fast-forward speed in accordance withdetermining that the first intensity of the first contact has satisfiedthe first intensity threshold and determining that the first contactcontinues to satisfy the second intensity threshold during thepredefined time interval and while continuing to detect the firstcontact on the touch-sensitive surface, detecting a second intensity ofthe first contact that satisfies a third intensity threshold that ishigher than the first intensity threshold; and, in response to detectingthe second intensity of the first contact, presenting the media contentat a second fast-forward speed that is higher than the firstfast-forward speed.
 16. The electronic device of claim 15, wherein theone or more programs include instructions for: while presenting themedia content at the second fast-forward speed and while continuing todetect the first contact on the touch-sensitive surface, detecting athird intensity of the first contact that does not satisfy a fourthintensity threshold; and, in response to detecting the third intensityof the first contact, presenting the media content at the firstfast-forward speed.
 17. A method, comprising: at an electronic devicewith a touch-sensitive surface and a display, wherein the electronicdevice includes one or more sensors to detect intensities of contactswith the touch-sensitive surface: while presenting media content at afirst speed, detecting a press input by a first contact on thetouch-sensitive surface that corresponds to a focus selector at a firstlocation of a first media control on the display; and, in response todetecting the press input by the first contact: determining whether afirst intensity of the first contact has satisfied a first intensitythreshold; subsequent to determining whether the first intensity of thefirst contact has satisfied the first intensity threshold, determiningwhether the first contact continues to satisfy a second intensitythreshold during a predefined time interval; in accordance withdetermining that the first intensity of the first contact has satisfiedthe first intensity threshold and determining that the first contactcontinues to satisfy the second intensity threshold during thepredefined time interval, presenting the media content at a firstfast-forward speed that is higher than the first speed as long as thefirst contact satisfies the second intensity threshold; and, inaccordance with determining that the first intensity of the firstcontact has satisfied the first intensity threshold and determining thatthe first contact does not continue to satisfy the second intensitythreshold during the predefined time interval, presenting the mediacontent at the first fast-forward speed.
 18. The method of claim 17,wherein the first intensity threshold is higher than the secondintensity threshold.
 19. The method of claim 17, including: whilepresenting the media content at the first fast-forward speed inaccordance with determining that the first intensity of the firstcontact has satisfied the first intensity threshold and determining thatthe first contact continues to satisfy the second intensity thresholdduring the predefined time interval, detecting a second intensity of thefirst contact that does not satisfy the second intensity thresholdsubsequent to the predefined time interval; and, in response todetecting the second intensity of the first contact that does notsatisfy the second intensity threshold subsequent to the predefined timeinterval, ceasing to present the media content at the first fast-forwardspeed.
 20. The method of claim 17, including: while presenting the mediacontent at the first fast-forward speed in accordance with determiningthat the first intensity of the first contact has satisfied the firstintensity threshold and determining that the first contact does notcontinue to satisfy the second intensity threshold during the predefinedtime interval, detecting a press input by a second contact on thetouch-sensitive surface that corresponds to the focus selector at thefirst location of the first media control on the display; and,determining whether a first intensity of the second contact hassatisfied the first intensity threshold; subsequent to determiningwhether the first intensity of the second contact has satisfied thefirst intensity threshold, determining whether the second contactsatisfies the second intensity threshold; and, in accordance withdetermining that the first intensity of the second contact has satisfiedthe first intensity threshold and subsequently determining that thesecond contact does not satisfy the second intensity threshold,presenting the media content at a second fast-forward speed that ishigher than the first fast-forward speed.
 21. The method of claim 20,including: in response to detecting the press input by the secondcontact, in accordance with determining that the first intensity of thesecond contact has satisfied the first intensity threshold andsubsequently determining that the second contact satisfies the secondintensity threshold, presenting the media content at the firstfast-forward speed while the second contact satisfies the secondintensity threshold.
 22. The method of claim 21, including: in responseto detecting the press input by the second contact, in accordance withdetermining that the first intensity of the second contact has satisfiedthe first intensity threshold and subsequently determining that thesecond contact satisfies the second intensity threshold, visuallydistinguishing the first media control on the display while the secondcontact satisfies the second intensity threshold.
 23. The method ofclaim 17, including: while presenting the media content at the firstfast-forward speed in accordance with determining that the firstintensity of the first contact has satisfied the first intensitythreshold and determining that the first contact continues to satisfythe second intensity threshold during the predefined time interval andwhile continuing to detect the first contact on the touch-sensitivesurface, detecting a second intensity of the first contact thatsatisfies a third intensity threshold that is higher than the firstintensity threshold; and, in response to detecting the second intensityof the first contact, presenting the media content at a secondfast-forward speed that is higher than the first fast-forward speed. 24.The method of claim 23, including: while presenting the media content atthe second fast-forward speed and while continuing to detect the firstcontact on the touch-sensitive surface, detecting a third intensity ofthe first contact that does not satisfy a fourth intensity threshold;and, in response to detecting the third intensity of the first contact,presenting the media content at the first fast-forward speed.